2017-03-17 72 views
0

我有两个模型,项目质量项目有一个名为质量这是一个FK到质量名称。这两个表是这个样子:FK值模板条件

Item 
----- 
itemId int PK 
name varchar 
quality varchar FK - Quality.name 

Quality 
----- 
qualityId int PK 
name varchar 

我试图做一个模板,列出了所有项目有一定的质量。这是我的代码有问题:

{% for Item in items %} 
    {% if Item.quality == "Common" %} 
     <div id="name_{{ Item.id }}" class="itemName">{{ Item.name }}</div> 
    {% endif %} 
{% endfor %} 

我知道,我的表包含至少一个元组与品质=“通用”,但我没有得到任何输出。

如果我尝试调整任何其他领域,那么它工作正常(例如:if Item.name == "exampleName")。

如何在来自FK的值上使用if语句?

回答

3

quality是相关对象,即质量的一个实例。如果您想根据名称进行比较,那么您必须使用该实例的该属性。

(另外,请使用正确的情况下,情况应该不会有大写字母。)

{% for item in items %} 
    {% if item.quality.name == "Common" %} 
     <div id="name_{{ item.id }}" class="itemName">{{ item.name }}</div> 
    {% endif %} 
{% endfor %}