Как добавить дополнительные данные в form.serialize() в django ajax Call при использовании модельной формы?

У меня есть представление django, которое использует ajax для проверки валидности формы и создания нового объекта, если это так, но я хотел бы также получить некоторые дополнительные данные с помощью form.serialize(), чтобы знать, какие поля заполнены пользователем, чтобы я знал, что передать методу create. Вот представление:

def createIssue(request):
form = CreateIssueForm(request.POST or None)
if request.is_ajax() and form.is_valid():
    kwargs = request.POST.get("kwargs")
    print(kwargs)
    # if kwargs is present
    #model.objects.create(**kwargs)
    
    context = {""}
    return JsonResponse({})
return render(request, "tracking/base.html")

Вот вызов ajax:

function CreateIssueAjax(e) {
e.preventDefault();
const role = this.getAttribute('role');
const _form = $("#CreateIssueForm");
var formString = _form.serializeArray();
console.log(formString)
function sendKwargs(arr) {
    let kwargs = {}
    arr.forEach(el => {
        if (!(el.value === "") | (!el.name === 'csrfmiddlewaretoken')) {
            kwargs[el.name] = el.value
        }
    });
    return kwargs;
}
var myData = _form.serialize();
console.log(myData);
myData['kwargs'] = JSON.stringify(sendKwargs(formString));
$.ajax({
    url: "/create-issue/",
    type: "post",
    data: myData,
    datatype: 'json',
    success: function (data) {
        console.log("success");

        // add to ui function after success
        // alert the user(alertify.js)
    },
});

}

Теперь, поскольку я использую модель формы, добавление ключа kwargs к дикту формы не позволит форме быть валидной. Есть ли другой способ передать другую пару ключ-значение в свойство data и при этом валидировать форму?

Вернуться на верх