2017-02-17 5 views
0

私はDjangoプロジェクトに取り組んでおり、そのサイトにはnavbarがあります。だから1人のユーザーがログインしたら、私はnavbarを変更したい。では、ベーステンプレートから継承されたnavbarを停止するにはどうすればよいですか?特定のテンプレートに対してnav-barの継承を中止する

{% load staticfiles %} 
<!DOCTYPE html> 
<html> 
<head> 
    <title>Blog</title> 
     <title>Eapp</title> 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" integrity="sha384-BVYiiSIFeK1dGmJRAkycuHAHRg32OmUcww7on3RYdg4Va+PmSTsz/K68vbdEjh4u" crossorigin="anonymous"> 

<!-- Optional theme --> 
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap-theme.min.css" integrity="sha384-rHyoN1iRsVXV4nD0JutlnGaslCJuC7uwjduW9SVrLvRYooPp2bWYgmgJQIXwl/Sp" crossorigin="anonymous"> 

<!-- Latest compiled and minified JavaScript --> 

    <link rel="stylesheet" href="{% static 'css/blog.css' %}"> 
</head> 
<body> 
    <div class="container"> 
    <nav class="navbar navbar-default"> 
     <div class="container-fluid"> 
     <!-- Brand and toggle get grouped for better mobile display --> 
     <div class="navbar-header"> 
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false"> 
      <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="#">Eapp</a> 
     </div> 

     <!-- Collect the nav links, forms, and other content for toggling --> 
     <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> 
      <ul class="nav navbar-nav navbar-right"> 
      <li><a href="{% url 'eapp:registration' %}">Register</a></li> 
      </ul> 
      <ul class="nav navbar-nav navbar-right"> 
      <li><a href="{% url 'eapp:login' %}">Login</a></li> 
      </ul> 
     </div><!-- /.navbar-collapse --> 
     </div><!-- /.container-fluid --> 
    </nav> 
     {% block content %} 
     {% endblock content%} 
    </div> 
</body> 
</html> 

これは私のbase.htmlのようです。新しいテンプレートの外観について教えてください。ありがとう

答えて

1

ユーザーはdjangoテンプレートタグを使用できます。たとえば、ユーザーが認証された場合はログアウトボタンを表示するテンプレートタグです。あなたがbase.htmlのあなたのナビゲーションバーのためにそれを行うのと同じ方法です。

{% if request.user.is_authenticated %} 
     <li><a href="/logout">Log Out</a></li> 
     {% else %} 
     <li><a href="/login">Log In</a></li> 
     {% endif %} 
+0

ありがとうございました。どのようにしてテンプレートの継承を止めることができますか? – Ananthu

+0

ユーザーが認証されたときにナビゲーションバーを非表示にします。たとえば、条件にナビゲーションバーコードを入力しない場合はナビゲーション関連コードを入力します。これにより、ナビゲーションバーが継承されなくなります。 – Darshan

関連する問題