我必须和modelForms一样,我只想做一个将军,而不是他们。请参阅下面的代码示例
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)来形成构造函数,并在此基础上生成表单。
发布于 2014-12-16 14:33:49
你不能这样做。元数据是在定义时计算的,因此不能根据运行时的请求来更改它。
然而,既然您只有有限的模型,并且没有自定义表单本身,为什么不定义表单,然后使用字典来使用正确的表单呢?
def create(request, model_class):
forms = {
'user': UserForm,
'group': GroupForm
}
form_class = forms[model_class]
...https://stackoverflow.com/questions/27505779
复制相似问题