Djangoで権限に応じて表示を変えれる?

2024年6月23日

はい、権限に応じて表示を変えることも可能です。Djangoのテンプレート内で権限を確認するためには、userオブジェクトのhas_permメソッドを使用します。

以下は、権限に応じて表示を変える例です:

html
<!-- 権限がある場合の表示 -->
{% if user.has_perm('your_app.can_access_feature') %}
    <ul>
        <li><a href="{% url 'tools:admin_dashboard' %}">管理者ダッシュボード</a></li>
        <!-- 他の権限がある場合のナビゲーションアイテムをここに追加 -->
    </ul>
{% endif %}

<!-- 権限がない場合の表示 -->
{% if not user.has_perm('your_app.can_access_feature') %}
    <p>この機能にアクセスする権限がありません。</p>
{% endif %}

上記の例では、user.has_permメソッドを使用して、特定の権限がユーザーにあるかどうかを確認しています。権限がある場合とない場合で、表示を切り替えています。必要に応じて、権限に対応するURLやメッセージを適切に設定してください。

未分類

Posted by ぼっち