Django dynamic formsets hidden field error

33 views Asked by At

I wanted to add button for dynamcially adding an instance of formset in dajngo. I use django-dynamic-formset for this. The problem is that if I add formset by the button and try to submit the below error appears:

(Hidden field TOTAL_FORMS) This field is required. (Hidden field INITIAL_FORMS) This field is required.

enter image description here

I read that it is caused by not including "form.managment_form" in a template, but I've included it: Here is a template code:

{% extends "mainapp/base.html" %}
{% block content %}
{% load static %}
{% load widget_tweaks %}

<!-- Include necessary scripts and CSS for dynamic formset -->
<script type="text/javascript" src="{% static 'jquery-3.7.1.min.js' %}"></script>
<script type="text/javascript" src="{% static 'jquery.formset.js' %}"></script>
<!-- <link rel="stylesheet" type="text/css" href="{% static 'formset/jquery.formset.css' %}"> -->

<div id="input-div1"></div>
<div class="input-div2">
    <form method="post">
        {% csrf_token %}
        {{ simulation_form.initial_amount.label_tag }}
        {{ simulation_form.initial_amount|add_class:"form-control"}}

        {{ simulation_form.number_of_simulations.label_tag }}
        {{ simulation_form.number_of_simulations|add_class:"form-control" }}

        {{ simulation_form.number_of_trades.label_tag }}
        {{ simulation_form.number_of_trades|add_class:"form-control" }}
        <br>

        <div class="strategy-formset">
            {{ strategy_formset.management_form }}
            {% for form in strategy_formset %}
            {{ form.as_p }}
            {% endfor %}
        </div>

        <button type="submit" name="save" class="btn btn-primary">Submit</button>
    </form>
</div>

<script type="text/javascript">
    $(function () {
        $('.strategy-formset').formset({
            prefix: '{{ strategy_formset.prefix }}'
        });
    });
</script>

{% endblock %}

Do you know what else can cause this error? Thanks in advance.

0

There are 0 answers