본문 바로가기

Flask

[Flask] sign up할 때 flash message 보이기

register 성공한후 home.html 화면으로 redirection 하기

flaskblog.py에 추가

import flash, redirect

@app.route("/register", methods=  ['GET', 'POST'])
def register():
    form = RegistrationForm()
    if form.validate_on_submit():
        flash(f'Account created for {form.username.data}!', 'success')
        return redirect(url_for('home'))
    return render_template('register.html', title = 'Register', form = form)

 

home.html에 flash message 보이기 위해서 layout.py 수정

<main role="main" class="container"> 이 부분에 추가
 
    <main role="main" class="container">
        <div class="row">
          <div class="col-md-8">
            {% with messages = get_flashed_messages(with_categories=true) %}
              {% if messages %}
                {% for category, message in messages %}
                  <div class="alert alert-{{ category }}">
                    {{ message }}
                  </div>
                {% endfor %}
              {% endif %}
            {% endwith %}
            {% block content %}{% endblock content %}
          </div>
 
 
 
 

정상적으로 홈으로 이동하여 flash message 출력됨