Modelformset和ajax提交更新模型

时间:2014-10-31 16:25:30

标签: jquery python ajax django

如何使用modelformset通过jquery“.on”上传模型? 在我的例子中,forms.py是

class ObjectForm(forms.ModelForm):

    class Meta:
        model = Object
        fields = ['booleanfield']

views.py中的myview:

...
objectformset_gen = modelformset_factory(Object, form=ObjectForm)
objectformset = objectformset_gen()
context.update({'objectformset': objectformset})
...

模板:

<form>
{{ objectformset.management_form }}
{% for form in objectformset %}
    {{ form.instance.NOTSERIAZABLEfields }}
    {{ form }}
{% endfor %}
</form>
$("body").on("click", "input:checkbox", function(e){  //I know it is mad every input:checkbox
var data = JSON.stringify({form: $(this)});
                $.ajax({
                    url: "{% url 'myview' %}",
                    type: "POST",
                    data: data,
                    contentType: 'application/json',
                    success:function(response){},
                    complete:function(){},
                    error:function (xhr, textStatus, thrownError){
                        alert("error");
                    }
                });
            });

我认为在这种情况下,如果我不使用表单和表单集会更好。

1 个答案:

答案 0 :(得分:0)

我没有找到任何办法。我只使用Modelformset来呈现html表单,但是视图解析了低级别的request.body来更新模型。