2010-07-27 3 views
0

Джанго 1,1Джанго - сложные формы с несколькими моделями

models.py:

class Property(models.Model): 
    name = models.CharField() 
    addr = models.CharField() 
    phone = models.CharField() 
    etc.... 

class PropertyComment(models.Model): 
    user = models.ForeignKey(User) 
    prop = models.ForeignKey(Property) 
    text = models.TextField() 
    etc... 

У меня есть форма, которая должна отображать несколько записей из моей модели свойств каждой с соответствующей формой PropertyComment, чтобы собрать комментарии пользователя к этому свойству. Другими словами, позволяя пользователю комментировать несколько экземпляров Property на одной странице.

Это кажется за пределами предполагаемого использования встроенного набора форм, поскольку это мультимодельная модель для мультимоделирования по сравнению с одномодельной моделью. Похоже, что пытаться перебирать экземпляры Property и создавать встроенный набор форм для каждого из них не только неуклюже, но я даже не уверен, что он может работать.

Любые идеи о том, с чего начать?

ответ

0

Вы думали об использовании комментарий рамки:

http://docs.djangoproject.com/en/dev/ref/contrib/comments/

Если не работает для вас, то, может быть, посмотреть в inlineformset_factory:

http://docs.djangoproject.com/en/dev/topics/forms/modelforms/#inline-formsets

from django.forms.models import inlineformset_factory 
PropertyCommentFormSet = inlineformset_factory(Property, PropertyComment) 
property= Property.objects.get(name=u'some property name') 
formset = PropertyCommentFormSet(instance=property) 
etc... 
Смежные вопросы