包含子表单的django表单未显示子表单的验证错误

在我的django应用程序页面中,它具有多种形式,因此主形式具有子形式。 提交时,我检查所有表单是否有效,如果任何表单无效,它将返回包含主表单的form_invalid函数。

但是问题是,如果任何子表单无效,则不会显示任何错误,并且字段也将重置。

这是提交表单时的代码。

        if player_form.is_valid() and stats_form.is_valid() and contacts_form.is_valid() and extra_stats_form.is_valid():
        player = player_form.save(commit=False)
        stats_form = PlayerStatsForm(request.POST,instance=player.stats)
        stats = stats_form.save()

        contacts_form = PlayerContactsForm(request.POST,instance=player.contacts)
        contacts = contacts_form.save()

        extra_stats_form = PlayerExtraStatsForm(request.POST,instance=player.extra_stats)
        extra_stats = extra_stats_form.save()

        return redirect(self.get_success_url())
    else:

        return self.form_invalid(player_form)`

get_context_data函数将子表单添加到主播放器表单中。

context.update({
        'object_title_plural': 'Players','list_headings': self.list_headings,'form_panel_title': 'Add Player','save_button_text': 'Add Player','search_form': self.form_defaults(PlayerSearchForm()),'sub_forms': (self.form_defaults(self.get_form(PlayerStatsForm)),self.form_defaults(self.get_form(PlayerContactsForm)),self.form_defaults(self.get_form(PlayerExtraStatsForm)))
    })

这是呈现子表单的模板。

{% block display_subforms %}
                {% if sub_forms %}
                    {% include "dashboard/includes/sub_form.html" %}
                {% endif %}
            {% endblock %}
koto21cn 回答:包含子表单的django表单未显示子表单的验证错误

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/2388333.html

大家都在问