【发布时间】:2019-01-07 10:40:09
【问题描述】:
我在 Django 中有一个带有 Projects 和 Tasks 的模型。一个项目可以有很多任务,这是我的模型:
class Project(models.Model):
project_name = models.CharField(max_length=200)
is_complete = models.BooleanField(default=False)
def __str__(self):
return self.project_name
class Task(models.Model):
project = models.ForeignKey(Project, on_delete=models.CASCADE)
task_name = models.CharField(max_length=100)
task_desc = models.TextField(max_length=600)
due_date = models.DateField('due date')
is_complete = models.BooleanField(default=False)
task_desc.short_description = "Task description"
def __str__(self):
return self.task_name
我想在项目旁边显示任务总数和已完成任务总数。我已将以下内容添加到我的 admin.py 以显示每个项目的总任务数:
def project_task_count(self, obj):
return obj.task_set.count()
我怎样才能向管理员添加仅完成任务的计数,并复制这种方法以在网站上显示这些计数,而不仅仅是在管理面板中?
我尝试将它添加到我的模型中,但它不起作用:
def num_complete(self, obj):
return self.is_complete.count()
【问题讨论】: