假设,我有一个叫鸡的模型:
class Chicken(models.Model):
name = models.CharField(max_length=30)
我还有一个叫Egg的模型,它有一个与鸡模型相似的外键:
^{pr2}$现在我想创建一个视图,其中包含所有鸡的列表以及它们产蛋的日期。在
我知道怎么用这样的方法把鸡下的蛋都弄出来:
c = Chicken.objects.get(name='Henry')
e = c.egg_set.all()
但这没什么用,因为我有很多鸡,我只想知道它们最新的蛋的日期。我也不知道如何将这些鸡蛋信息放入我的视图中以便于访问。在我看来,我想做这样的事情:
{% for chicken in chickens %}
<p>{{ chicken.name }} layed is last egg on {{ chicken.last_egg }}</p>
{% endfor %}
这可能是一个非常基本的问题,但我只是一个初学者,我将非常感谢你能给予的任何帮助。在这种情况下,Django文档并不能真正帮助我。在
我个人喜欢用@property注释来解决在模型中注释方法的问题。在
例如:在你的鸡模型中,你会有一个方法,比如:
在模板中,可以将其用作常规模型字段。在
^{pr2}$另外,我想知道这个解决方案是否有任何问题,以及你们对它的看法。 也许我们可以好好谈谈如何巧妙地解决这个问题。在
希望有帮助。在
您需要的是django的注释feature。基本上,您需要用egg's layed\u的
Max
来注释chicken中的每一行。如果没有提示就在我面前,我不能保证下面的陈述是准确的,但它应该给你一个起点。在编辑你的鸡模型如下:
相关问题 更多 >
编程相关推荐