我在django中创建了一个表单,但是我需要根据ulr中传递的标签来选择表单
class OrderAddView(CreateView):
tag_url_kwarg = 'tag'
from_class = get_order_form(tag_url_kwarg)
template_name = 'orders/order_add.html'
def get_order_form(self,tag):
print('tag', tag)
if tag == 'fast':
return FastOrdersForm
if tag == 'simple':
return SimpleOrdersForm
如何最好地实施?如何调用类中的方法?
您可以创建类似于形状映射器的东西,其中键是 slug,值是形状。例如,
然后在控制器中使用方法
get_form_class
,得到对应的表格:您可以在这里看到更详细的答案 - https://stackoverflow.com/questions/55957261/django-formview-with-dynamic-forms/55957490#55957490