Django:如何从视图中引用模型的对象

时间:2013-04-04 21:05:36

标签: django django-models django-views

我有一个销售珠宝的django电子商务网站。我有一个Product模型,其中包含show_product视图,该视图由product.html模板显示。

我现在想用我的珠宝提供可定制的魅力。为此,我创建了一个Charm模型,用于定义魅力的名称,图像,SKU等。我还修改了我的Product模型以包含allows_charms布尔值,因为每个魅力都可用于任何首先允许魅力的产品。换句话说,我不必担心关系映射,因为只要产品ALLOWS魅力,它就允许所有魅力。

我的问题出现在show_product视图中。如何设置包含所有charms模型对象的Charm变量,然后我可以在模板中引用该代码,其代码如下:

{% for ch in charms %}
<div class="charm_thumb">
     <img src="{{ MEDIA_URL }}images/charms/{{ ch.image }}" alt="{{ ch.name }}" />
     <p id="charm_name">{{ ch.name }}</p>
     <p id="charm_price">${{ ch.price }}</p>
</div>
{% endfor %}

如果我从产品模型的对象的M2M关系中获取关联的魅力列表,我会知道如何做到这一点,但我不知道如何在给定模型中抓取每个对象?

为了明确我的最终目标,我希望像这样,非功能,代码可以工作:

from mystore import Charms
charms = Charms.all()

1 个答案:

答案 0 :(得分:2)

Model.objects.all()返回给定模型的所有对象,例如Charm.objects.all()