2017-01-01 14 views
1


Я создал функцию входа и выхода из системы на свой сайт Flask. Тем не менее, я пытаюсь скрыть кнопку знака из (на моей навигационной панели), когда я не подписал и показать кнопку входа, когда я подписал вКол-во входов и выходов

Вот мой выход из системы и входа в системе метода:.

@app.route('/login', methods=['GET', 'POST']) 
def login(): 
    error = None 
    if request.method == 'POST': 
     if (request.form['username'] != 'admin') \ 
       or request.form['password'] != 'admin': 
      error = 'Invalid Credentials. Please try again.' 
     else: 
      session['logged_in'] = True 
      flash('You were logged in.') 
      return redirect(url_for('availability')) 
    return render_template('login.html', error=error) 


@app.route('/logout') 
@login_required 
def logout(): 
    session.pop('logged_in', None) 
    flash('You were logged out.') 
    return redirect(url_for('welcome')) 

Вот мой Navbar на мой сайт:

<nav class="navbar navbar-default navbar-fixed-top"> 
     <div class="container"> 
      <div class="navbar-header"> 
       <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar"> 
        <span class="sr-only">Toggle navigation</span> 
        <span class="icon-bar"></span> 
        <span class="icon-bar"></span> 
        <span class="icon-bar"></span> 
       </button> 
       <a class="navbar-brand" href="/">Student Support</a> 
      </div> 
      <div id="navbar" class="navbar-collapse collapse "> 
       <ul class="nav navbar-nav"> 
        <li><a href="/">Home</a></li> 
        <li><a href="/aboutus">About Us</a></li> 
        <li><a href="/faqs">FAQ'S</a></li> 
        <li class="active"><a href="/availability">Availability</a></li> 
        <li><a href="/Quiz">Quiz</a></li> 
       </ul> 
       <ul class="nav navbar-nav navbar-right"> 
        {% if 'session['logged_in'] == True %} 
        <li><a href="/logout">Logout <span class="sr-only">(current)</span></a></li> 
        {% else %} 
        <li><a href="/login">Login <span class="sr-only">(current)</span></a></li> 
        {% endif %} 
       </ul> 
      </div> 
      <!--/.nav-collapse --> 
     </div> 
     <!--/.container-fluid --> 
    </nav> 

Как вы можете видеть, что я пытался сделать, если заявление, так что если «сессия [» logged_in'] == Правда% дисплей кнопка выхода из системы, но это айн Не работаем.

+0

'сессия [' logged_in'] это право? Удалите цитату перед сеансом. – user902384

+0

@Bugbugbuggerbuggered вы гениальный lool –

+0

@Bugbugbuggerbuggered спасибо –

ответ

2

Был опечатка и должно быть:

<ul class="nav navbar-nav navbar-right"> 
    {% if session['logged_in'] == True %} 
     <li><a href="/logout">Logout <span class="sr-only">(current)</span></a></li> 
    {% else %} 
     <li><a href="/login">Login <span class="sr-only">(current)</span></a></li> 
    {% endif %} 
</ul>