2010-01-12 67 views
1

如果formset中的所有表单均有效,则基于inlineformset_factory创建的表单总是返回True。当formset中的表格未填写时,它也返回True。没有填写意味着在这里,用户没有插入至少一个值。至少这是我发现的。django inlineformset_factory - 如何判断表单中的表单是否为空

有没有办法了解formset中的表单是空的?例如,下面我不想设置用户消息,即创建对象时,实际上没有创建对象。

CashExpenditureFormSet = inlineformset_factory(Project, CashExpenditure, form=CashExpenditureForm, can_delete=False, extra=1, max_num=1) 

    if request.method == 'POST': 
     cash_expenditure_formset = CashExpenditureFormSet(request.POST, request.FILES, instance=project) 
     if cash_expenditure_formset.is_valid(): 
      cash_expenditure_formset.save() 
      request.user.message_set.create(message='The Cash Expenditure was added successfully to project: "%s".' % project.__str__()) 

回答

3

这是非常密切相关的一个答案我张贴在另一个问题,已经处理了这个问题,我自己:Inline Form Validation in Django

+0

感谢。完美的答案。 – 2010-01-12 22:43:27

相关问题