SirAnthony 22.04.2011 13:18 Home

Пстач, расскажи, как сделать так, чтобы ModelForm не выводила переопределенные в ней поля(declared_fields), точнее не сама форма, а ее наследник. Задаю третье поле через fields, два переопределенных тоже выводятся. Пробовал писать в exclude — не помогло, они все равно рисуются.

1. werehuman 22.04.2011 13:19 Psi+

там же наследованные модели связаны с предками внешним ключом

2. SirAnthony 22.04.2011 13:25 Home

http://code.djangoproject.com/ticket/139... Это баг, как я и думал, только он как всегда никому не нужен.

3. SirAnthony 22.04.2011 13:46

Костыли, да:
class _ModelForm(parent):
__fields = f
def __init__(self, *args, **kwargs):
super(_ModelForm, self).__init__(*args, **kwargs)
if self.__fields:
for fieldname in self.fields.keys():
if fieldname not in self.__fields:
del self.fields[fieldname]

class Meta(parent.Meta):
model = m
fields = f

Do you really want to delete ?