Я создаю приложение для изучения Django и начал с системы контактов, которая в настоящее время хранит контакты и адреса. С многозначны по отношению к А, но вместо использования Django models.ManyToManyField()
я создал свою собственную таблицу ссылок, предоставляющую дополнительную информацию о ссылке, такую как тип адреса для этого контакта (дом, работа и т. Д.). ). То, что я пытаюсь сделать, это передать эту информацию в представление, поэтому в моем полном представлении контакта я могу сделать это:
def contact_view_full(request, contact_id):
c = get_object_or_404(Contact, id=contact_id)
a = []
links = ContactAddressLink.objects.filter(ContactID=c.id)
for link in links:
b = Address.objects.get(id=link.AddressID_id)
a.append(b)
return render_to_response('contact_full.html', {'contact_item': c, 'addresses' : a }, context_instance=RequestContext(request))
И поэтому я могу сделать эквивалент c.Addresses.all()
или, тем не менее, ManyToManyField работает. Мне интересно знать, как я могу передать информацию о ссылке в объекте link
вместе с информацией 'addresses' : a
, чтобы, когда мой шаблон делал это:
{% for address in addresses %}
<!-- ... -->
{% endfor %}
и правильно связать правильные данные объекта ссылки с адресом.
Так, каков наилучший способ достичь этого? Я думаю, что объединение двух объектов может быть идеей, но у меня недостаточно опыта с Django, чтобы понять, считается ли это лучшим способом сделать это. Предложения?
Заранее спасибо.
Nf