safesite/groups/views.py

63 lines
2.1 KiB
Python

from django.http import HttpResponse
from django.shortcuts import render
from django.shortcuts import redirect
from .models import Groups
from .forms import GroupsForm
def index(request):
if not request.session.get('is_login', None):
return redirect('/groups/login/')
return render(request, 'groups/index.html')
def login(request):
# 不允许重复登录
if request.session.get('is_login', None):
return redirect('/groups/index/')
if request.method == "POST":
groups_form = GroupsForm(request.POST)
message = '请检查填写的内容!'
if groups_form.is_valid():
username = groups_form.cleaned_data.get('username')
password = groups_form.cleaned_data.get('password')
try:
user = Groups.objects.get(name=username)
except:
message = '用户不存在!'
return render(request, 'groups/login.html', locals())
if user.password == password:
request.session['is_login'] = True
request.session['user_id'] = user.id
request.session['user_name'] = user.name
return redirect('/groups/index/')
else:
message = '密码不正确!'
return render(request, 'groups/login.html', locals())
else:
return render(request, 'groups/login.html', locals())
groups_form = GroupsForm()
return render(request, 'groups/login.html', locals())
def logout(request):
if not request.session.get('is_login', None):
return redirect('/groups/login')
request.session.flush()
return redirect('/groups/login')
import json
from captcha.models import CaptchaStore
from captcha.helpers import captcha_image_url
def refresh_captcha(request):
hashkey = CaptchaStore.generate_key()
image_url = captcha_image_url(hashkey)
return HttpResponse(json.dumps({'key': hashkey, 'image_url': image_url}), content_type='application/json')
def company(request):
return render(request, 'groups/company.html', locals())
def job(request):
return render(request, 'groups/job.html', locals())