我只想在用户登录时才渲染页面,否则要渲染登录页面我正在使用Firebase进行身份验证

问题描述

from django.shortcuts import render
from django.contrib import auth
import pyrebase

config = {
    'apiKey': "",'authDomain': "",'databaseURL': "",'projectId': "",'storageBucket': "",'messagingSenderId': "",}

firebase = pyrebase.initialize_app(config)
database = firebase.database()
_auth_ = firebase.auth()

def loggedin(request):
    email = request.POST.get('email')
    password = request.POST.get('password')
    try:
        user = _auth_.sign_in_with_email_and_password(email,password)

    except:
        message = "Invalid Credentials"
        return render(request,'signin.html',{"messg":message})

    session_id = user['idToken']
    request.session['uid'] = str(session_id)
    return render(request,'loggedin.html',{"e":email})

def logout (request):
    auth.logout(request)
    return render(request,'signin.html')

def joinexam(request):
    #i want to render this page only when the user is logged in
    return render(request,"joinexam.html")

我只想在用户登录后呈现“ joinexam.html”页面。 如果用户登录并尝试访问127.0.0.1:8000/joinexam,我想将用户重定向登录页面

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...