Jquery ajax некорректно работает с django - PullRequest
1 голос
/ 21 июня 2020

Здесь я пытаюсь добавить категорию с помощью ajax, но это не работает должным образом. Он создает данные, но не отображается. Я хочу отобразить эти данные на странице HTML без ссылки sh. В шаблоне категории взяты из базы данных. Я хочу отображать вновь созданную категорию в опции без refre sh после сохранения данных.

script

<script type="text/javascript">
    $(document).on('submit','#=category-form',function(e) {
        e.preventDefault();
        var form = $(this);
        $.ajax({
            url: form.attr("action"),
            data: {
                name:$('#name').val(),
                csrfmiddlewaretoken:$('input[name=csrfmiddlewaretoken]').val(),
            },
            type: 'POST',
            dataType: 'json',
            success:function(){
                 $("#myModal").modal("hide");

            }

        });
    });
</script>

views

class AddgoryCateView(View):
    def post(self, request):
        name = request.POST.get('name')
        category = Category.objects.create(name=name)
        data = {'category': category}
        return JsonResponse(data)

template

    <label class="text-primary">Categories</label> 
&nbsp;<small><i class="ic-add" data-toggle="modal" data-target="#myModal"></i></small>

                       <select class="form-control" name="categories" multiple="multiple" id="id-categories">
                        {% for category in categories %}
                           <option value="{{category.pk}}">{{category.name}}</option>
                        {% endfor %}
                        </select>
...