yoshiislandblog.net
元営業の駆け出しアラサーSEが、休日にMACと戯れた際の殴り書きメモ。日々勉強。日々進歩。

この記事は3年以上前に書かれた記事で内容が古い可能性があります

djangoのページでログインしないと見られないようにする

2019-02-20

DjangoでChatアプリを作る5(チャットの投稿が別画面でもリアルタイムに反映されるまで)の続き

djangoのページでログインしないと見られないようにするには、
@login_required をつけるだけ(モジュールのインポートも忘れずに)

% cat mysite/chat/views.py
from django.shortcuts import render
from django.utils.safestring import mark_safe
import json
from django.contrib.auth.decorators import login_required  ★ここ

@login_required  ★ここ
def index(request):
    return render(request, 'chat/index.html', {})

@login_required  ★ここ
def room(request, room_name):
    return render(request, 'chat/room.html', {
        'room_name_json': mark_safe(json.dumps(room_name))
    })

しかし、このままだと、chatルームに入ろうとしたら、ログイン要求され、ログインしたらhomeに戻ってしまう。
元いた場所に飛ばされるようにするには、以下リンク参考にしてください
djangoでログインした後、「LOGIN_REDIRECT_URL」ではなく、元いた場所に飛ばされるようにする