如何在django中执行简单的函数操作并将值返回到管理界面?

时间:2013-12-19 16:32:46

标签: python django

我正在django和python中迈出第一步。我不明白的是我应该在哪里放置我的主要功能以及如何控制它们的输出。

例如,我正在尝试用django进行一些计算:

class Calc(models.Model):
    id = models.AutoField(primary_key=True)
    status = models.CharField(max_length=100), 
    text = models.CharField(max_length=100)

我想写一个检查状态变量的方法:

def checkStatus():
    if self.status == 'completed':
        ....... #set Calc.text = 'task is completed'
    elif self.status == 'pending':
        ....... #set Calc.text = 'task is pending'
return # what should I return here?

checkStatus = checkStatus()

然后,我想在任何地方的管理界面上显示它:

<span>task status: {{ checkstatus }}</span>

有人可以给我一个提示,告诉我如何做这么简单的事情吗?在任何PHP mvc中,视图都是从控制器呈现的,变量作为上下文传递给视图。但是django怎么样?我错过了什么?

1 个答案:

答案 0 :(得分:1)

#models.py
class Calc(models.Model):
    id = models.AutoField(primary_key=True)
    status = models.CharField(max_length=100), 
    text = models.CharField(max_length=100)
    @property
    def checkStatus():
      return 'xxx'

#views.py
from django.views.generic import DetailView,
  class Calc(DetailView):
     model = Calc

#template
{{ object.checkStatus }}