Сброс пароля Django Restframework dj-rest-auth подтверждает проблему с отправкой

При попытке настроить процесс сброса пароля с помощью пакета Dj-rest-auth. Я столкнулся с проблемой получения кнопки отправки для отправки запроса на конечную точку API rest_password_reset_confirm. Я продолжаю получать сообщение об ошибке, связанное с методом ContentType и $.post, выполняющим только запрос GET. Я взял форму и все из демо-приложения в dj-rest-auth здесь.


person SNG    schedule 30.05.2021    source источник


Ответы (1)


Мне пришлось переписать скрипт ajax в base.html ниже, чтобы он работал. Я также добавил два новых div для ответа на успех и отказ.

<div class="form-group api-response-success" style="color: green;"></div>
  <div class="form-group api-response-error" style="color: red;"></div>

          $().ready(function(){
            $('form.ajax-post button[type=submit]').click(function(e){
              var form = $('form.ajax-post');
              var url = form.attr('action');
              data = form.serializeArray();
              var object_with_key_value = {};
              $.map(data, function(n, i){
                object_with_key_value[n['name']] = n['value'];
               });

              $.ajax({
                'url': url,
                'type':"POST",
                'data': JSON.stringify(object_with_key_value),
                'contentType': 'application/json',
                'success': function(data){
                    $('.api-response-success').html("Password has been reset with the new password.");
                },
                'error': function(data){
                    $('.api-response-error').html("Something went wrong, please try again.");
                },
              });
              e.preventDefault();
            })
          });

person SNG    schedule 30.05.2021