我有以下观点
def application(request, uuid):
application = get_object_or_404(LoanApplication, uuid=uuid)
partners = FirmPartner.objects.filter(application=application)
PartnerFormset = modelformset_factory(FirmPartner, form=FirmPartnerForm, can_delete=True, extra=1)
if request.method == 'POST':
.........
..........
但是我想让FirmPartnerForm中的一些字段在表单的init方法中动态地成为必需的,方法是使用我们传入的请求或关键字参数中的一些值,比如modelformset_factory(......application=application)
?你知道吗
那么,是否可以将请求对象或任何关键字参数发送到modelformset\u工厂?如下所示
modelformset_factory(FirmPartner, form=FirmPartnerForm, can_delete=True, extra=1, request=request, application=application) ?
编辑
现在我升级到django1.9.9,下面是我的代码
from .forms import FirmPartnerForm
PartnerFormset = modelformset_factory(FirmPartner, form=FirmPartnerForm, can_delete=True, extra=1,
form_kwargs={'request': request, 'application': application})
表单.py
class FirmPartnerForm(forms.ModelForm):
class Meta:
model = FirmPartner
exclude = ['application']
def __init__(self, *args, **kwargs):
super(FirmPartnerForm, self).__init__(*args, **kwargs)
if kwargs.get('application', None):
application = kwargs.get('application
.....................
.....................
错误回溯
File "/Users/name/projects/project_name/applications/views.py", line 462, in application_management
form_kwargs={'request': request, 'application': application})
TypeError: modelformset_factory() got an unexpected keyword argument 'form_kwargs'
所以在1.9中添加了Daniel
所说的表单\u kwargs之后,我升级到了1.9.9,仍然得到了上面的错误?你知道吗
^{} 参数就是您所需要的。你知道吗
相关问题 更多 >
编程相关推荐