Найти - Пользователи
Полная версия: И еще: Можно ли както сделать множественное наследование в формах.
Начало » Django » И еще: Можно ли както сделать множественное наследование в формах.
1
Oduvan
Я чесно говоря вообще не понял, почему у меня ничего не получилось

class ProfileEdit(forms.Form):
....

class RegistrationForm(UserCreationForm,ProfileEdit):
pass
на выводе RegistrationForm выдает ошибку на использовании super формы
Александр Кошелев
Какая джанга?
Как выглядят формы?
Oduvan
Daevaorn
Какая джанга?
1.0

Daevaorn
Как выглядят формы?
class ProfileEdit(forms.Form):
id = forms.IntegerField(widget=widgets.HiddenInput(),initial=0);
name = forms.CharField(max_length=100,label=_('Displayed Name'));
email = forms.EmailField(label='Email',max_length=75)
send_emails=forms.BooleanField(widget=widgets.CheckboxInput,label='Send Email',required=False)
location = forms.CharField(max_length=100,required=False,label=_('Country,City'))
to_contact=forms.CharField(max_length=100,required=False,label=_('Contact,Enterprise'))
how_contact = forms.CharField(max_length=100,required=False,label=_('Phone, Fax, Email, Website'))
def_tags = forms.CharField(max_length=100,required=False,label=_('Your default Tags'))

class BoardReg(UserCreationForm,ProfileEdit):
def save(self, commit=True):
logging.debug('Save form2 '+str(commit));
user = super(BoardReg, self).save()
if(commit):
pr = BModels.profile(name=self.cleaned_data['display_name'],user=user,location=self.cleaned_data['location'],to_contact=self.cleaned_data['to_contact'],how_contact=self.cleaned_data['how_contact'],def_tags=self.cleaned_data['def_tags'],email=self.cleaned_data['email'],send_emails=self.cleaned_data['send_emails']);
pr.save();
return user
Django
Exception Type: TypeError
Exception Value:

Error when calling the metaclass bases
metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases

Exception Location: /usr/lib/python2.5/site-packages/django/forms/models.py in __new__, line 170
Python Executable: /usr/bin/python
Python Version: 2.5.2
Александр Кошелев
А UserCreationForm?
Oduvan
А этот отсюда

from django.contrib.auth.forms import UserCreationForm;
Александр Кошелев
Н у так всё правильно. Одна просто Form другая ModelForm - вот это и не нравится. Плюс можно попробовать местами поменять.
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