Django布尔字段视图+模板

时间:2012-02-08 16:21:39

标签: django django-views

这是我目前的设置:

http://dpaste.com/699684/

我期待的是两件事:

  1. 如果布尔字段值为true,我想包含一个新模板,例如

    {% if clearance=true %} {% include example.html %} {% endif %}
    

    我认为这很容易(ish)但是我无法弄清楚如何将值放入视图然后进入我的模板

  2. 我希望能够定义一个名为clearance的新视图,该视图列在“/ clearance”下,列出所有带有清除boolean字段的产品。我有一个基本的多态模型和从那里扩展的其他几个模型,附件只是我给出的一个例子

    我认为这可能会因为多态而略显困难,但我可能错了。

1 个答案:

答案 0 :(得分:2)

你几乎在为清除项目添加模板,你只是没有使用正确的语法:

{% if object.clearance %}{% include 'example.html' %}{% endif %}

其中product是forloop中的当前产品或其他任何内容。

对于间隙视图,您只需要:

class ProductClearanceView(ListView):
    model = Product
    template_name = 'products/clearance.html'

    def get_queryset(self):
        qs = super(ProductClearanceView, self).get_queryset()
        return qs.filter(clearance=True)