def login(request): if request.method == "GET": # 构建表单类不好用 # lf = LoginForm() # return render(request,'polls/login.html',{"lf":lf}) # 需要在html中自己手动编写表单 return render(request, 'polls/login.html') elif request.method == 'POST': # 与登陆的表单页面标签的value值一致 username = request.POST.get("username") password = request.POST.get("password") # 使用django的自带的用户认证系统 认证成功返回用户 失败返回None user = authenticate(username=username, password=password) print(user) # 不可把django的方法放在判断user前面否则会有匿名用户的错误 if user: # 调用django的login方法是为了生成session lin(request, user) next = request.GET.get("next") if next: url = next print(next) else: url = reverse("polls:index") return redirect(to=url) else: # url = reverse("polls:login") # return redirect(to=url) # render可传参 return render(request, 'polls/login.html', {"errors": "用户名密码不匹配"})
def login(request): if request.method == "GET": # return render(request,'polls/login.html') lf = LoginForm() return render(request, 'polls/login.html', {'lf': lf}) elif request.method == "POST": lf = LoginForm(request.POST) if lf.is_valid(): username = lf.cleaned_data["username"] password = lf.cleaned_data["password"] # 可以使用django自带的用户认证系统 认证成功返回用户 失败返回None user = authenticate(username=username, password=password) # 调用django登录方法 其实是为了生成cookie if user: lin(request, user) next = request.GET.get("next") print("取得next参数为", next) if next: url = next else: url = reverse("polls:index") return redirect(to=url) else: url = reverse("polls:login") return redirect(to=url)
def login(request): if request.method == "GET": # 1 需要在html中自己手动编写表单 # return render(request,'polls/login.html') # 2 使用表单类生成一个表单 lf = LoginForm() return render(request, 'polls/login.html', {"lf": lf}) elif request.method == "POST": # 第二种 lf = LoginForm(request.POST) if lf.is_valid(): username = lf.cleaned_data["username"] password = lf.cleaned_data["password"] user = authenticate(username=username, password=password) # 第一种 # username=request.POST.get("username") # password=request.POST.get("password") # 使用django自带的用户验证系统,进行验证 # user=authenticate(username=username,password=password) if user: lin(request, user) next = request.GET.get("next") if next: url = next else: url = reverse("polls:index") return redirect(to=url) else: # url = reverse("polls:login") # return redirect(to=url) return render(request, "polls/login.html", {"errors": "用户名或密码错误"})
def login(request): if request.method == "GET": lf = LoginForm() return render(request, 'login.html', {'lf': lf}) elif request.method == "POST": # username = request.POST.get('username') # password = request.POST.get('password') # user = authenticate(username=username, password=password) lf = LoginForm(request.POST) if lf.is_valid(): username = lf.cleaned_data['username'] password = lf.cleaned_data['password'] user = authenticate(username=username, password=password) if user: lin(request, user) next = request.GET.get('next') print('取得next参数为:', next) if next: url = next else: url = reverse('polls:index') return redirect(to=url) else: # url = reverse('polls:login') # return redirect(to=url) return render(request, 'login.html', {'errors': '用户名或密码错误'}) else: return HttpResponse("未知错误")
def login(request): if request.method == "GET": #第2种方法,使用表单类生成一个表单 lf = LoginForm() return render(request, 'polls/login.html', {"lf": lf}) #第1种方法 #return render(request,'polls/login.html',{"errors":"用户名和密码不匹配!"}) elif request.method == "POST": # 第1种方法 # username = request.POST.get("username") # password = request.POST.get("password") #第2种方法 lf = LoginForm(request.POST) if lf.is_valid(): username = lf.cleaned_data["username"] password = lf.cleaned_data["password"] #认证成功返回用户信息,是不返回None user = authenticate(username=username, password=password) #为了生成Cookie信息 if user: lin(request, user) next = request.GET.get("next") #print("取得next参数为", next) if next: url = next else: url = reverse("polls:index") return redirect(to=url) else: # url = reverse("polls:login") # return redirect(to=url) return render(request, 'polls/login.html', {"errors": "用户名和密码不匹配!"}) else: return HttpResponse("出现未知错误!")
def login(request): if request.method == "GET": # 2.使用表单类生成一个表单 lf = LoginForm() return render(request, 'login.html', {"lf": lf}) # 1.需要在html中自己手动编写表单 # return render(request, 'login.html') elif request.method == "POST": lf = LoginForm(request.POST) if lf.is_valid(): username = lf.cleaned_data["username"] password = lf.cleaned_data["password"] # username = request.POST.get("username") # password = request.POST.get("password") # 可以使用django自带的用户认证系统 认证成功返回用户 失败返回None user = authenticate(username=username, password=password) # 调用Django登录方法 其实是为了生成cookie if user: lin(request, user) next = request.GET.get("next") if next: url = next else: url = reverse("polls:pindex") return redirect(to=url) else: # url = reverse("polls:login") # return redirect(to=url) return render(request, 'login.html', { "errors": "用户名密码不匹配", "lf": lf }) else: return HttpResponse("未知错误")
def complete(request, id): if request.method == "POST": form = TypesForm(request.POST) currentUser = request.user userr = User.objects.get(username=currentUser) # studentCheckbox = request.POST['student'] # teacherCheckbox = request.POST['teacher'] users = request.POST.get('user') ty = Typesofuser.objects.create(user_id=userr.id, typeOfUser=users) if users == "admin": ques = QuestionBank.objects.all() users = User.objects.all() form = coursesForm() subs = courses.objects.all() return render(request, 'questionGenerator/admin.html', { 'form': form, 'ques': ques, 'users': users, 'subs': subs }) lin(request, user) elif users == "teacher": return render(request, 'questionGenerator/teacher.html') lin(request, user) else: user = User.objects.get(id=id) form = TypesForm() return render(request, 'questionGenerator/complete.html', { 'user': user, 'form': form })
def login(request): if request.method == "GET": # lf = LoginForm() # return render(request, 'polls/login.html', {"lf": lf}) # 方法一html中form表单 return render(request, 'polls/login.html') elif request.method == "POST": # lf = LoginForm(data=request.POST) # if lf.is_valid(): # username = lf.cleaned_data["username"] # password = lf.cleaned_data["password"] username = request.POST.get("username") password = request.POST.get("password") # 可以使用Django自带的用户认证系统 user = authenticate(username=username, password=password) if user: lin(request, user) next = request.GET.get("next") if next: url = next else: url = reverse("polls:index") return redirect(to=url) else: # url = reverse("polls:login") # return redirect(to=url) return render(request, "polls/login.html", {"errors": "用户密码不匹配"})
def login(request): if request.method == "GET": lf = LoginForm() return render(request, 'polls/login.html', {"lf": lf}) elif request.method == "POST": lf = LoginForm(request.POST) if lf.is_valid(): username = lf.cleaned_data["username"] password = lf.cleaned_data["password"] user = authenticate(username=username, password=password) if user: lin(request, user) next = request.GET.get("next") if next: url = next else: url = reverse("polls:index") return redirect(to=url) else: # url = reverse("polls:login") # return redirect(to=url) return render(request, 'polls/login.html', {"errors": "用户名密码不匹配"}) else: return HttpResponse("未知错误")
def login(request): if request.method == "GET": return render(request, '登录.html', locals()) elif request.method == "POST": username = request.POST.get('username') password = request.POST.get('password') try: user = authenticate(username=username, password=password) # user = User.objects.get(username=username) print("找到用户", user) print(user.username) print(user.password) # 验证成功生成cookie lin(request, user) # 人性化处理、 next_url = request.GET.get("next") if next_url: url = next_url else: url = reverse("qikuapp:list") return redirect(to=url) # return render(request, '培训信息.html', locals()) except: print("未找到相应用户,登录失败") error = "用户名或密码错误,登录失败" return render(request, '登录.html', locals())
def login(request): if request.method == "GET": lf = LoginForm() return render(request, 'login.html', {"lf": lf}) elif request.method == "POST": lf = LoginForm(request.POST) print(lf.is_valid()) if lf.is_valid(): username = lf.cleaned_data["username"] password = lf.cleaned_data["password"] # username = request.POST.get("username") # password = request.POST.get("password") user = authenticate(username=username, password=password) if user: lin(request, user) print("--", request.method) next = request.GET.get("next") if next: url = next else: url = reverse("polls:polls") return redirect(to=url) else: url = reverse("polls:login") return redirect(to=url) else: return HttpResponse("未知错误")
def login(request): if request.method == 'GET': lf = LonginForm() return render(request, 'login.html', {"lf": lf}) elif request.method == 'POST': lf = LonginForm(request.POST) if lf.is_valid(): username = lf.cleaned_data["username"] password = lf.cleaned_data["password"] # username = request.POST.get('username') # password = request.POST.get('password') user = authenticate(username=username, password=password) if user: lin(request, user) next = request.GET.get("next") print(next) if next: url = next else: url = reverse("polls:polls") return redirect(to=url) else: return render(request, 'login.html', {'err': '用户名或密码错误'}) else: return HttpResponse("失败")
def login(res): if res.method == 'GET': # 1.手动返回html表单类 return render(res, 'login.html') # 2.使用表单类生成 # lf = LoginForm() # return render(res,'login.html',{'lf':lf}) elif res.method == 'POST': # lf = LoginForm(res.POST) # if lf.is_valid(): # username = lf.cleaned_data['username'] # password = lf.cleaned_data['password'] username = res.POST.get('username') password = res.POST.get('password') # 可以使用Djano自带的用户认证系统 成功返回用户 失败返回None user = authenticate(username=username, password=password) if user: # 调用Djano 是为了生成Cook信息 lin(res, user) next = res.GET.get('next') if next: url = next else: url = reverse('polls:index2') return redirect(to=url) else: return render(res, 'login.html', {'error': '用户名或密码不匹配'})
def login(request): # return HttpResponse("登录") if request.method == "GET": return render( request, 'vote/login.html', ) elif request.method == "POST": username = request.POST.get("username") password = request.POST.get("password") # 验证登录可以使用django自带的用户认证系统 认证成功返回用户 失败返回 None user = authenticate(username=username, password=password) print(user) if user: # 认证成功 生成cookie lin(request, user) # 检验以下 来(登录)之前有没有准备进入详情页 next_url = request.GET.get("next") if next_url: url = next_url else: url = reverse("vote:index") return redirect(to=url) else: url = reverse("vote:login") return redirect(to=url)
def login(request): if request.method == "GET": #2.使用表单类生成一个表单 lf = LoginForm() return render(request, 'polls/login.html', {'lf': lf}) #1.需要在html中自己手动编写表单 # return render(request, 'polls/login.html') elif request.method == "POST": lf = LoginForm(request.POST) if lf.is_valid(): username = lf.cleaned_data["username"] password = lf.cleaned_data["password"] # username = request.POST.get("username") # password = request.POST.get("password") # 可以使用Django自带的用户认证系统 user = authenticate(username=username, password=password) if user: lin(request, user) next = request.GET.get("next") print("取得next的参数为", next) if next: url = next else: url = reverse("polls:index") return redirect(to=url) else: return render(request, 'polls/login.html', {'errors': '用户名密码不匹配'}) # url = reverse("polls:login") # return redirect(to=url) else: return HttpResponse("未知错误")
def home(request): if request.user.is_authenticated(): return HttpResponseRedirect(reverse('chalk_schedule')) if request.method == "POST": username = request.POST.get('username') email = request.POST.get('email') password = request.POST.get('password') password_conf = request.POST.get('password_conf') if password != password_conf: return render(request, 'index.html', { 'error': 'Passwords do not match!', }) if len(U.objects.filter(username=username))>0: return render(request, 'index.html', { 'error': 'Username already taken!', }) if len(U.objects.filter(email=email))>0: return render(request, 'index.html', { 'error': 'Email already taken!', }) user = U.objects.create_user(username=username, email=email, password=password) user.first_name = "User" user.last_name = "Name" user.is_active = True user.save() var = authenticate(username=username, password=password) lin(request, var) return HttpResponseRedirect(reverse("chalk_schedule")) return render(request, 'index.html')
def login(request): if request.method == 'POST': login_form = StaffLoginForm(data=request.POST) if login_form.is_valid(): username = login_form.cleaned_data['username'] password = login_form.cleaned_data['password'] user = authenticate(username=username, password=password) if user is not None: lin(request, user) return redirect('shelf:list_branches') else: login_form.add_error(field=None, error='Incorrect username or password') context = { 'login_form': login_form, } return render(request, 'accounts/login.html', context) else: return render(request, 'accounts/login.html', {'login_form': login_form}) else: context = { 'login_form': StaffLoginForm, } return render(request, 'accounts/login.html', context)
def login(request): username = request.POST.get('username') password = request.POST.get('password') user = authenticate(username=username, password=password) if user: lin(request, user) return redirect('index') args = dict(error='Неправильный пароль или имя') return render(request, 'login.html', args)
def register(request): username = request.POST['name'] password = request.POST['pass'] user = User.objects.create_user(username=username, password=password) info = UserInfo(user=user) user.save() info.save() user = authenticate(username=username, password=password) lin(request, user) return redirect("/")
def login(request): if request.method!="POST": return render(request,'account/login.html',{}) username = request.POST['username'] password = request.POST['password'] user = authenticate(request, username=username, password=password) if user is not None: lin(request, user) return redirect('home') else: messages.add_message(request,messages.INFO,'Invalid username or password') return render(request,'account/login.html',{})
def login(request): if request.user.is_authenticated: return redirect('/user/dashboard') # checking method if request.method == 'GET': # checking if loginError exists if request.session.get('loginError') is not None: loginError = request.session.get('loginError') # checking if login error has been shown to user yet (if the page has been reloaded) if not loginError.get('reloaded'): # setting reloaded to True loginError['reloaded'] = True request.session['loginError'] = loginError else: # setting login error to none request.session['loginError'] = None # returning template return render(request, "users/login.html") elif request.method == 'POST': # getting data data = request.POST.dict() username, password = data.get("username"), data.get("password") # authenticating user user = authenticate(username=username, password=password) if user is not None: # loggin in user lin(request, user) # checksums try: sr = SurveyResults.objects.filter(user=user).get() except: s = SurveyResults.objects.create(user=user) s.save() return redirect('/survey') try: sr = SavedPcs.objects.filter(user=user).get() except: sResults = SavedPcs.objects.create(user=user) sResults.save() return redirect('/survey') # redirecting to dashboard return redirect('/user/dashboard') else: # setting login error request.session['loginError'] = { "message": "Username and password combination not found.", "reloaded": False, } # authenication failed sending to login page return redirect('/login')
def login(request): if request.user.is_authenticated(): return home(request) elif request.method == 'GET': c = {} c.update(csrf(request)) return render(request, 'login.html', c) else: # This is done quite stupid username = request.POST['name'] password = request.POST['pass'] user = authenticate(username=username, password=password) lin(request, user) return redirect("/")
def register(request): if request.method == "POST": form = Registration(request.POST) if form.is_valid(): name = form.cleaned_data['username'] password = form.cleaned_data['password'] user = User.objects.create_user(username=name, password=password) if user: lin(request, user) return redirect('complete', id=user.id) else: return redirect('index') else: form = Registration() context = {'form': form} return render(request, 'questionGenerator/index.html', context)
def login(request): # return HttpResponse("登录") if request.method == "GET": # 1.传统 需要自己编写html表单 # return render(request, 'vote/login.html', ) # 2. 使用表单类html表单 lf = LoginForm() return render(request, 'vote/login.html', {'lf': lf}) elif request.method == "POST": lf = LoginForm(request.POST) if lf.is_valid(): username = lf.cleaned_data["username"] password = lf.cleaned_data["password"] # username = request.POST.get("username") # password = request.POST.get("password") # 验证登录可以使用django自带的用户认证系统 认证成功返回用户 失败返回 None # user = authenticate(username = username,password = password) user = User.objects.get(username=username) print(user) print(user.password) # 因为使用表单类用户的密码是未加密状态,不能使用django登录认证系统 if user.password == password: # if user: # 认证成功 生成cookie lin(request, user) # 检验以下 来(登录)之前有没有准备进入详情页 next_url = request.GET.get("next") if next_url: url = next_url else: url = reverse("vote:index") return redirect(to=url) else: # url = reverse("vote:login") # return redirect(to=url) return render(request, "vote/login.html", { 'errors': "用户名或密码错误", "lf": lf }) # return HttpResponse("登录") else: return HttpResponse("出现未知错误,登录失败")
def login(request): if request.user.is_authenticated(): return HttpResponseRedirect(reverse('chalk_schedule')) if request.method == "POST": username = request.POST.get('username') password = request.POST.get('password') user = authenticate(username=username, password=password) if user is not None: lin(request, user) return HttpResponseRedirect(reverse('chalk_schedule')) else: return render(request, 'clogin.html', { 'success': False, 'message': 'Username or password are incorrect', }) return render(request, 'clogin.html', {})
def login(request): if request.method == "POST": form = Registration(request.POST) if form.is_valid(): name = form.cleaned_data['username'] password = form.cleaned_data['password'] user = authenticate(username=name, password=password) if user: userr = User.objects.get(username=name) typ = Typesofuser.objects.get(user_id=userr.id) if typ.typeOfUser == "admin": lin(request, user) ques = QuestionBank.objects.all() users = User.objects.all() form = coursesForm() subs = courses.objects.all() return render(request, 'questionGenerator/admin.html', { 'form': form, 'ques': ques, 'users': users, 'subs': subs }) elif typ.typeOfUser == "teacher": lin(request, user) user = request.user users = User.objects.get(username=user) if courses.objects.filter(user_id=users.id).exists(): subs = courses.objects.get(user_id=users.id) sub = subs.course_title quest = QuestionBank.objects.filter(subject=sub) print(sub) return render(request, 'questionGenerator/teacher.html', { 'user': user, 'quest': quest, 'sub': sub }) else: return render(request, 'questionGenerator/teacher.html') else: form = Registration() return render(request, 'questionGenerator/login.html', {'form': form})
def login(request): if request.method == 'POST': form = forms.LoginForm(request.POST) if form.is_valid(): user = authenticate(username=request.POST['username'], password=request.POST['password']) if user is not None: # the password verified for the user if user.is_active: lin(request, user) message = "Bienvenue, " + \ user.first_name if user.first_name != '' else "Bienvenue, " + user.username messages.success(request, message) context = { 'page_title': 'Connexion', } if user.groups.filter(name='consultants').exists(): return render(request, 'admin_pages_index.html', context=context) else: return render(request, 'admin_pages_index.html', context=context) else: messages.warning(request, "Votre compte n'est pas activé.") return redirect('public_login') else: context = { 'page_title': 'Connexion', 'login_form': form, } messages.warning(request, "Merci de vérifier les informations") return render(request, 'public_pages_login.html', context=context) else: context = { 'page_title': 'Connexion', } messages.warning(request, "Merci de vérifier les informations") return render(request, 'public_pages_login.html', context=context)
def login(request): if request.method == "GET": # 第一种方法自己写一个html文件用于显示 # return render(request,'polls/login.html') # 方法2:使用Django自带的表单类来生成HTML文件 lf = LoginForm() return render(request, 'polls/login.html', {"lf": lf}) elif request.method == "POST": # 方法1 # username = request.POST.get("username") # password = request.POST.get("password") # 方法2 lf = LoginForm(data=request.POST) if lf.is_valid(): username = lf.cleaned_data["username"] password = lf.cleaned_data["password"] # ---------------方法2结束-------------------- # 可以使用django自带的用户认证系统 认证成功返回用户 失败返回None user = authenticate(username=username, password=password) # 调用django登录方法 其实是为了生成cookie if user: lin(request, user) next = request.GET.get("next") print("取得next参数为", next) if next: url = next else: url = reverse("polls:index") return redirect(to=url) else: # url = reverse("polls:login") # return redirect(to=url) return render(request, 'polls/login.html', { "error": "用户名和密码不匹配", "lf": lf }) else: return HttpResponse("未知错误")
def login(request): if request.method == 'GET': return render(request, 'polls/login.html') elif request.method == 'POST': username = request.POST.get('username') password = request.POST.get('password') #可以使用django自带的用户认证系统 认证成功返回用户 失败返回None user = authenticate(username=username, password=password) if user: #调用django登陆方法,其实是为了生成cookie lin(request, user) next = request.GET.get("next") if next: url = next else: url = reverse('polls:index') return redirect(to=url) else: # url = reverse('polls:login') # return redirect(to=url) return render(request, 'polls/login.html', {'errors': '用户名密码不一致'})
def login(request): if request.method == "GET": lf = LoginForm() return render(request, "polls/login.html", {"lf": lf}) # return render(request,'polls/login.html') elif request.method == "POST": lf = LoginForm(request.POST) if lf.is_valid(): username = lf.cleaned_data["username"] password = lf.cleaned_data["password"] # username = request.POST.get("username") # password = request.POST.get("password") # 可以使用django自带的用户认证系统 认证成功返回用户 失败返回None user = authenticate(username=username, password=password) # 调用django登录方法 其实是为了生成cookie if user: lin(request, user) url = reverse("polls:index") return redirect(to=url) else: # url = reverse("polls:login") # return redirect(to=url) return render(request, "polls/login.html", {"errs": "用户名或密码不匹配"})
def login(request): if request.method == "GET": # 2 使用表单类生成表单 # lf = LoginForm() # return render(request, 'login.html', {"lf": lf}) # 1 需要在html中自己编写表单 return render(request, 'login.html') elif request.method == "POST": # lf = LoginForm(request.POST) # if lf.is_valid(): username = request.POST.get("username") password = request.POST.get("password") # 可以使用Django自带的用户认证 认证成功返回用户 失败返回none user = authenticate(username=username, password=password) if user: # 调用Django的登录方法 生成cookie lin(request, user) url = reverse("polls:polls") return redirect(to=url) else: # url=reverse("polls:login") # return redirect(to=url) return render(request, 'login.html', {'errors': "用户名或密码错误"})