我是django的新手,所以這個問題可能是愚蠢的,但請隨時教我正確的方式,如果你知道它。 我試着用Google搜索這個問題,但我仍然處於虧損狀態。 這裏是我的問題:Django模板中的兩個外鍵和值
我在我的模型類有兩個外鍵:
class X(models.Model):
name = models.CharField(max_length=30)
def __unicode__(self):
return name
class Y(models.Model):
name = models.CharField(max_length=30)
def __unicode__(self):
return name
class Z(models.Model):
name = models.CharField(max_length=30)
x = models.ForeignKey(X)
y = models.ForeignKey(Y)
def __unicode__(self):
return name
在我看來,我得到X對象的部分列表和Y的對象,像這樣的部分列表:
def MyView(x_pattern, y_pattern):
x_list = X.objects.filter(name__contains=x_pattern)
y_list = Y.objects.filter(name__contains=y_pattern)
z_list = Z.objects.all()
return render_to_response({'x_list': x_list, 'y_list': y_list, 'z_list': z_list})
在我的模板,我想能夠顯示一個表像這樣:
<table>
<tr>
<td>Y</td>
{% for x in x_list %}
<td>{{ x }}</td>
{% endfor %}
</tr>
{% for y in y_list %}
<tr>
<td>{{ y }}</td>
{% for x in x_list %}
<td>
<!-- here I need help:
I need to display z[x, y] if it exists, or "N/A" otherwise.
-->
</td>
{% endfor %}
</tr>
{% endfor %}
如何在django中正確執行此操作?
非常感謝,
我可以在視圖中過濾列表,但它仍然無法幫助我正確顯示它(即,我需要將(x,y)密鑰對映射到模板中的z [x,y]值以顯示它在一個適當的表格單元格中)。我在這裏錯過了什麼嗎? – mfynf 2010-09-20 12:10:46