У меня есть равный modelForms, и я хочу сделать только один генерал вместо них. Пожалуйста, смотрите ниже образцы кодаСоздать ModelForm динамически
class CreateStudent(forms.ModelForm):
class Meta:
model = Student
fields = [field.name for field in model._meta.fields if not field.name == 'id']
class CreateGroup(forms.ModelForm):
class Meta:
model = Group
fields = [field.name for field in model._meta.fields if not field.name == 'id']
Я хочу, чтобы иметь возможность сделать что-то вроде этого:
class CreateItem(forms.ModelForm):
class Meta:
model = custom_model_name #here I need to pass model from request somehow
fields = [field.name for field in model._meta.fields if not field.name == 'id']
Я хочу, чтобы ссылки, как /create/Group
и /create/User
и я хочу передать последнюю часть url (Group
или User
), чтобы сформировать конструктор и сформировать на нем форму.
Почему бы не просто использовать 'exclude = ['id']' для 'ModelForm' вместо этого? –
Можете ли вы предоставить полную строку, такую как shoud look, например. 'model._meta.fields.exclude' или что? – micgeronimo
вместо 'fields' просто используйте' exclude = ['id'] '. см. здесь https://docs.djangoproject.com/en/1.7/topics/forms/modelforms/#selecting-the-fields-to-use –