所以我有一个模型,
class Category(SmartModel):
item=models.ManyToManyField(Item)
title=models.CharField(max_length=64,help_text="Title of category e.g BreakFast")
description=models.CharField(max_length=64,help_text="Describe the category e.g the items included in the category")
#show_description=check box if description should be displayed
#active=check box if category is still avialable
display_order=models.IntegerField(default=0)
def __unicode__(self):
return "%s %s %s %s " % (self.item,self.title, self.description, self.display_order)
如您所见,它有一个多对多字段
item=models.ManyToManyField(Item)
我想返回模板中的所有项目,这是我的views.py
def menu(request):
categorys= Category.objects.all()
items= categorys.all().prefetch_related('item')
context={
'items':items,
'categorys':categorys
}
return render_to_response('menu.html',context,context_instance=RequestContext(request))
这是我在模板中的做法,
<ul>
{% for item in items %}
<li>{{ item.item }}
</li>
</ul>
{% endfor %}
毕竟这就是它在我的网页中返回的内容,
<django.db.models.fields.related.ManyRelatedManager object at 0xa298b0c>
我在做什么错,我真的环顾四周,但都是徒劳的,希望你能帮助我并提前感谢你