我有這些表:如何找回記錄的所有字段的多對多的關係
class Contract(models.Model):
project = models.ForeignKey(Project)
start_date = models.DateField()
agreed_contacts = models.ManyToManyField(Contact, through='ContractPartyInvolved')
class ContractPartyInvolved(models.Model):
contact = models.ForeignKey(Contact)
contract = models.ForeignKey(Contract)
role = models.ForeignKey(Role)
agreed = models.BooleanField()
我要查詢來獲取所有接觸鏈接到合同的具體所以我已在我看來,這樣做:
def generate_contract(request, id):
contract = get_object_or_404(Contract, pk=id)
agreedContacts = contract.agreed_contacts.all()
return render_to_response('contract.html', {'agreedContacts' : agreedContacts })
在我的模板
現在我有:
{% for ac in agreedContacts %}
<strong> {{ ac.agreed }} || {{ ac }}</strong>
{% endfor %}
問題是我只收回名稱,{{ac}}正常工作,但我沒有找回與該記錄關聯的所有其他字段。例如同意和角色。 我該怎麼做?
+1對於select_related。忘記進一步的數據庫命中從cpi中檢索聯繫人。謝謝。 – DTing 2011-05-09 09:07:42