ログインしたユーザーがスーパーユーザーであるかどうかをテンプレート/ビューでどのように認識しますか?
ユーザーがスーパーユーザーでない場合に完全に非表示にしたいフォーム(テンプレート内)に特定のボタンがあります
どうやってそれをやりますか?
ログインしたユーザーがスーパーユーザーであるかどうかをテンプレート/ビューでどのように認識しますか?
ユーザーがスーパーユーザーでない場合に完全に非表示にしたいフォーム(テンプレート内)に特定のボタンがあります
どうやってそれをやりますか?
オブジェクトをチェックアウトis_superuserします。User
{% if request.user.is_superuser %}
...
<button>...</button>
...
{% else %}
...
{% endif %}
編集: @mustafa-0x コメントの後
上記は、デフォルトではない設定にdjango.core.context_processors.request含まれていることを前提としています。TEMPLATE_CONTEXT_PROCESSORS
のデフォルト設定TEMPLATE_CONTEXT_PROCESSORS:
TEMPLATE_CONTEXT_PROCESSORS = (
'django.contrib.auth.context_processors.auth',
'django.core.context_processors.debug',
'django.core.context_processors.i18n',
'django.core.context_processors.media',
'django.core.context_processors.static',
'django.core.context_processors.tz',
# 'django.core.context_processors.request',
'django.contrib.messages.context_processors.messages',
)
すでに含まれていますdjango.contrib.auth.context_processors.auth(特にコンテキスト プロセッサは含まれていませんrequest)。つまり、ほとんどの場合{{ user }}、ビューを介してコンテキストに追加する必要なく、またはrequestコンテキスト プロセッサが上記のようにユーザーにアクセスできるようにする必要はありません。{{ request.user }}