我在模板上进行这项工作时遇到了一些麻烦,想知道我是否可以得到一些帮助:
我有一个表,里面有植物,植物表和类别表是多对多的关系。这样植物可以属于一个或多个类别。我正在使用 Django 1.5,以下是模型:
class Plant(models.Model):
scientific_name = models.CharField(max_length=128, unique=True)
category = models.ManyToManyField(Category)
...
class Category(models.Model):
category = models.CharField(max_length=128)
...
和观点:
class PlantListView(ListView):
context_object_name='plant_list'
template_name='plants/index.html'
model = Plant
def get_queryset(self):
return self.model.objects.all().order_by('category')
我试过这个:
{% regroup plant_list by category as category_list %}
<ul>
{% for category in category_list %}
<li>{{ category.grouper }}
<ul>
{% for plant in plant_list.list %}
<li>{{ plant.scientific_name }}</li>
{% endfor %}
</ul>
</li>
{% endfor %}
</ul>
但我得到的只是:
<django.db.models.fields.related.ManyRelatedManager object at 0x1053bfb90>
<django.db.models.fields.related.ManyRelatedManager object at 0x1053bfbd0>
<django.db.models.fields.related.ManyRelatedManager object at 0x1053bfd50>
当然,我真正想要的是:
- 年鉴
- 藿香
- 薏苡仁
- 粗毛槐
- 多年生灯泡
- 藿香
- 大葱
- 青葱
... ETC ...
请注意,同一植物可以存在于多个类别中,并且应在每个类别中列出。
我究竟做错了什么?
提前致谢!!