Laravel 5.8 Перенаправление после входа в систему - PullRequest
0 голосов
/ 04 июля 2019

В моем приложении Laravel есть страница входа по умолчанию, а также форма входа в систему в раскрывающемся списке. Как я установил сейчас, после успешного входа в систему пользователь перенаправляется на страницу индекса, однако, если пользователь использует форму входа в раскрывающемся списке, я хочу, чтобы он остался на той странице, на которой он уже находится.

Есть ли лучшая практика, чем добавлять отдельный метод для входа через выпадающий список?

1 Ответ

0 голосов
/ 04 июля 2019

Вы можете использовать axios или ajax, чтобы войти и остаться на странице.

Пример для axios, в вашем скрипте напишите что-то вроде этого

$("body").on("submit", "#login-form", function (e) {
    var action = $(this).attr("action"); // your login url

    e.preventDefault();

    axios.post(action, $(this).serialize())
     .then(function (response) {
        // do something from the response
        // i.e. display error or update navbar to logged in view
     })
     .catch(function (error) {
        // handle error here
     });
});

Пример для ajax, в вашем скрипте напишите что-то вроде этого

$("#login-form").submit(function(event){
    event.preventDefault(); //prevent default action 
    var post_url = $(this).attr("action"); //get form action url
    var request_method = $(this).attr("method"); //get form GET/POST method
    var form_data = $(this).serialize(); //Encode form elements for submission

    $.ajax({
        url : post_url,
        type: request_method,
        data : form_data,
        beforeSend: function() {
            // show loading or whatever
        },
        success: function(data) {
            // do something from the response
            // i.e. display error or update navbar to logged in view
        },
        error: function(xhr) { // if error occured            
            var status = xhr.statusText;
            var response = JSON.parse(xhr.responseText);

            // handle error here                       
        }
    });
});

В обоих примерах я предполагаю, что у вас будет форма входа с идентификатором login-form

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