python flask dynamici c Создание URL с помощью url_for () - PullRequest
0 голосов
/ 26 апреля 2020

У меня есть ajax js функция:

if (data.result == "Successfully joined"){
    window.location.href='{{ url_for( 'chat', name = "test" ) }}';
}

и функция в python:

@app.route('/chat/<string:name>')
def chat(name):
    return render_template("chat.html", c=name, s="Janek")

но когда мой первый (ajax js ) вызывается, это приводит к ошибке 404 not found. После удаления дополнительного имени переменной, все мысли загружаются корректно. Что я делаю не так?

РЕДАКТИРОВАТЬ 1 все js:

<script type=text/javascript>
    $(function() {
        $('a#join_btn').bind('click', function() {
            $.post('/', {
                var1: $('input[name="cname"]').val(),
            }, function(data) {
                $('#result').text(data.result);
                if (data.result == "Successfully joined"){
                    window.location.href='{{ url_for( 'chat', name = "test" ) }}';
                }
            });
            return false;
        });
    });
</script>

РЕШЕНО: добавлено methods=["POST"] к @app.route('/') исправил ошибку для меня.

1 Ответ

0 голосов
/ 26 апреля 2020

@app.route('/chat/<string:name>') должно быть @app.route('/chat/<name>')

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