Найти - Пользователи
Полная версия: Форма от нескольких моделей
Начало » Django » Форма от нескольких моделей
1
Belegnar
Есть необходимость создать форму, которая включала бы в себя формы нескольких моделей. Имеется:

* модели User, Guest, Player
* формы, заведенные через forms.ModelForm, UserForm, GuestForm, PlayerForm

Если я создаю форму как

class NewForm(UserForm, GuestForm, PlayerForm):
pass
то NewForm().fields содержит только поля первой формы (UserForm). Подскажите, пожалуйста, как бы ее объявить таким образом, чтобы все поля всех форм-родителей присутствовали?
tmt
Belegnar
Есть необходимость создать форму, которая включала бы в себя формы нескольких моделей. Имеется:

* модели User, Guest, Player
* формы, заведенные через forms.ModelForm, UserForm, GuestForm, PlayerForm

Если я создаю форму как

class NewForm(UserForm, GuestForm, PlayerForm):
pass
то NewForm().fields содержит только поля первой формы (UserForm). Подскажите, пожалуйста, как бы ее объявить таким образом, чтобы все поля всех форм-родителей присутствовали?
Идем по ссылке:
http://docs.djangoproject.com/en/dev/topics/forms/modelforms/#form-inheritance

Читаем:

There are a couple of things to note, however.

* Normal Python name resolution rules apply. If you have multiple base classes that declare a Meta inner class, only the first one will be used.
This means the child's Meta, if it exists, otherwise the Meta of the first parent, etc.
* For technical reasons, a subclass cannot inherit from both a ModelForm and a Form simultaneously.

Chances are these notes won't affect you unless you're trying to do something tricky with subclassing.


Идем дальше:

http://code.djangoproject.com/ticket/7018

Делаем выводы…
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB