lov*_*ing 0 python django django-templates django-models
我有django对象:
class Event(models.Model):
title = models.CharField(max_length=255)
event_start_date = models.DateField(null=True, blank='true')
...
class RegistrationDate(models.Model):
event = models.ForeignKey(tblEvents)
date_type = models.CharField(max_length=10, choices=registration_date_type)
start_date = models.DateField(blank='true', null='true')
end_date = models.DateField(blank='true', null='true')
Run Code Online (Sandbox Code Playgroud)
事件可以具有早期,正常和晚期注册期.
我写了一个函数,它接受一个事件并返回以下之一:None,"Early","Normal"或"Late"
一切都很好.
在我的应用程序中,我想显示一个事件列表以及它们的注册状态.所以我这样做了一个查询.
Events = tblEvents.objects.all()
Run Code Online (Sandbox Code Playgroud)
所以我有关于事件的所有信息,但没有状态.
获取模板中显示的每个事件的状态的最简单/最佳方法是什么.
我认为我可以编写一个模板标签,但这似乎更多的工作应该是必要的.
添加属性到您的Event类,例如:
class Event:
# stuff here
@property
def status(self):
# do the same thing here as in your status function
return status
Run Code Online (Sandbox Code Playgroud)
您可以在模板中执行以下操作:
{{ event.status }}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
188 次 |
| 最近记录: |