我有这样一个抽象模型:
class BaseAgent(models.Model):
name = models.CharField('Name', max_length=128, null=False, default='')
class Meta:
abstract = True
我正在用精确的代理类型创建这个模型的子类。例如Agent001,Agent002等等。你知道吗
我只希望这些子类中的每一个子类都有一个ModelForm
形式的类。我将把它传递给UpdateView
视图。但是它需要指定Meta.model
。你知道吗
class AgentEditForm(ImprovedForm, forms.ModelForm):
class Meta:
model = BaseAgent # here I would like to have Agent001, Agent002 or others
exclude = ()
我有一个子类ModelForm
,添加了一些mixin,希望使用这个类(我们称它为ImprovedForm
)。你知道吗
理想情况下,我希望在urls.py
中有一个字符串来调用只传递了模型名的视图(还有表单)。你知道吗
url(r'^agent001/new$', login_required(views.AgentCreateUpdateView.as_view(model=Agent001, form=ImprovedAgentForm)), name='new_agent001'),
当然,我可以为每个模型创建一个表单,如下所示:
class Agent001EditForm(AgentEditForm):
class Meta:
model = Agent001
但它只是一个复制粘贴。想象一下,我有两个以上的类,并将有更多的未来。我想要一个通用的解决方案。你知道吗
我如何用最少的代码行来完成它?你知道吗
表单.py
相关问题 更多 >
编程相关推荐