簡體   English   中英

django,如何設置函數來修改模型變量

[英]django, How to set up function to modify models variables

我是 Django 新手,請有人解釋一下這應該如何正常工作:

我創建了名為 taskai 的應用程序:

從 django.db 導入模型

# Create your models here.
class taskai(models.Model):
    title = models.TextField()
    image = models.ImageField(upload_to='images/',null=True)
    desc = models.TextField(blank=True)
    inp = models.IntegerField(null=True)

    def __str__(self):
        return self.title

    def skaiciai(self, inp):
        for i in range(10):
            self.inp += i
        return print(self.inp)

我只是在 django 中使用模型和函數,我想在站點中打印修改后的 inp 值。 我正在添加管理面板標題、圖像、desc 和 inp(例如 5)。 輸出應該是 50,我怎樣才能讓它工作?

您需要這樣做才能獲得 inp:

def skaiciai(self):
    for i in range(10):
        self.inp += i
    return print(self.inp)


aaa = taskai()

aaa.skaiciai()

你需要去掉skaiciai方法上的“inp”。 通過接收 self 參數,您將能夠在方法中調用任何類變量。

我已經通過創建新函數解決了:

def save(self, *args, **kwargs):
    for i in range(10)
         self.inp  += i
    super(taskai, self).save(*args, **kwargs)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM