Django Метод не разрешен (POST) 405 - PullRequest
0 голосов
/ 18 марта 2020

Может кто-нибудь помочь мне с этим. Я пытаюсь получить значение моего ввода в html с помощью javascript, но когда я запускаю свой проект, это показывает это. Метод не разрешен (POST) Можете ли вы помочь мне выяснить, в чем проблема и как мне ее решить?

url:

    from django.conf.urls import url,include
    from . import views
    from django.contrib.auth.decorators import login_required
    from django.views import View


    urlpatterns = [
         url(r'^change-nameserver/$', login_required(views.bulkNSChange.as_view()), name='change_NS'),
]

просмотров:

        class bulkNSChange(GENERIC_PERMISSION_MIXIN,View):
            permissions_required = 'can_use_DNS_API'


            def post(self, request):

                context = {
                    'result': {
                        'bulkChange': False,
                        }
                    }
                body = json.loads(request.body)
                print body,'loaded'

                if body:
                    assert type(body == dict)

                    print 'eto po'
                    log.info('PROCESSING CHANGE NS- {1} to {2}'.format(body['domain'], body['nameServer']))
                    context['result']['bulk'] = {
                        'bulkChange': True,
                        'bulkNS': 'YEAH'
                    }

                return HttpResponse(json.dumps(context), content_type='application/json')

js: функция bulkUpdateNS () {

            var prompt = confirm('Execute Bulk NS Changes? (This event is logged)')

            if (prompt){
                var domain = document.getElementById('domain')
                var nameServer = document.getElementById('nameServer')
                var nsbody = {
                    'domain': domain.value,
                    'nameServer': nameServer.value
                }
                console.log(nsbody)
                $.ajax({
                        type: "POST",
                        dataType: "json",
                        url: "/domains/change-nameserver/",
                        data: JSON.stringify(nsbody),
                        success: function(result) {
                            alert('Bulk Changing Domain NS started')
                        },
                        error: function(err) {
                            console.log(err)
                        },
                        complete: function(){
                            domain.value =''
                            nameServer.value =''
                            $('#bulkChangeNSModal').modal('hide');
                        }
                });

            }



        }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...