def register(request): if request.method == "POST": # form = UserForm(request.POST) # if form.is_valid(): # try: # form.save() # return redirect() # except: # pass try: uname = request.POST.get("uname") email = request.POST.get("email") passwd = request.POST.get("passwd") com_passwd = request.POST.get("com_passwd") user = User() if passwd!=com_passwd: raise Exception else: user.uname = uname user.passwd = passwd user.email = email user.save() except: return redirect("/register") else: return HttpResponse("data entered!") return render(request,'register.html',{})
def add_user(username, password, email, sex): same_name_user = User.objects.filter(name=username) if same_name_user: message = '用户名已存在' return None same_email_user = User.objects.filter(email=email) if same_email_user: message = '该邮箱已经被注册了!' return None new_user = User() new_user.name = username new_user.password = hash_code(password) new_user.email = email new_user.sex = sex new_user.has_confirmed = True #直接跳过邮件确认 new_user.save() new_userprofile = UserProfile() new_userprofile.user = new_user new_userprofile.save() new_userprofile.follow_list.add(new_userprofile) new_userprofile.save() return
def addTeacher(request): if request.method == "POST": if User.objects.filter(username=request.POST['name']).exists(): context = {'info': "Username already Exist"} return render(request, 'teacher/add_teacher.html', context) else: user = User() user.username = request.POST['name'] user.email = request.POST['email'] user.set_password(request.POST['password']) user.save() teacher = Teacher() teacher.user = user teacher.dept_id = request.POST['class'] teacher.set_password(request.POST['password']) teacher.t_USN = request.POST['t_USN'] teacher.name = request.POST['name'] teacher.email = request.POST['email'] teacher.sex = request.POST['sex'] teacher.DOB = request.POST['DOB'] teacher.phone = request.POST['phone'] teacher.save() context = { 'class_s': Dept.objects.all(), 'success': "Teacher Added Successfully" } return render(request, 'teacher/add_teacher.html', context) dept = Dept.objects.all() context = {'department': dept} return render(request, 'teacher/add_teacher.html', context)
def create_userprofile_with_github_user_info(request): headers = {'Authorization': '{} {}'.format(request.session.get('token_type'), request.session.get('access_token'))} json_response = requests.get('https://api.github.com/user', headers=headers).json() github_id = extract_from(json_response, "id") name = extract_from(json_response, "name") avatar_url = extract_from(json_response, "avatar_url") email = extract_from(json_response, "email") print("github id {} - name {} - avatar_url {} - email {}".format(github_id, name, avatar_url, email)) try: new_user = User() new_user.authentication_id = github_id new_user.name = name new_user.email = email new_user.save() new_profile = Profile() new_profile.user_id = new_user.id new_profile.avatar_url = avatar_url new_profile.User = new_user new_profile.save() request.session['username'] = name content = {'githubapi.profile_creation': 'User created and Profille authomatic filled with user Github public information'} return Response(content, status=status.HTTP_201_CREATED) except: content = {'githubapi.profile_creation': 'something went bad'} return Response(content, status=status.HTTP_409_CONFLICT)
def Userv(request): ''' 用户数据相关 :param request: :return: ''' context = { 'from': { 'name': None, 'sex': None, 'email': None, 'c_time': None, } } user = User.objects.all() if not request.session.get('is_login', None): return redirect('/login/') context['user'] = user # 添加数据 if request.POST: context['from']['name'] = request.POST['name'] context['from']['sex'] = request.POST['sex'] context['from']['email'] = request.POST['email'] data = User() data.name = request.POST['name'] if request.POST['sex'] == '男': data.sex = 'male' else: data.sex = 'female' data.email = request.POST['email'] data.c_time = time.ctime data.has_confirmed = 1 data.password = 123456 data.save() # print("已保存", time.ctime, context['from']) # 删除数据 if request.GET and request.GET['pid'] == 'delete': name = request.GET['name'] # User.objects.filter(name=name).delete() print("删除成功", name) # 修改数据 if request.GET and request.GET['pid'] == 'set': name = request.GET['name'] pid = request.GET['pid'] # User.objects.filter(name=name).delete() print("修改数据", name, pid) return render(request, 'data/User.html', context=context)
def reg_confirm_view(request,reg_id=0): if UserTicket.objects.filter(hash_code=reg_id,expired=False).exists(): confirmed_ticket = UserTicket.objects.get(hash_code=reg_id,expired=False) new_user = User() if User.objects.filter(email=confirmed_ticket.email).exists(): data = { "header": "Error!", "desc": "Email address "+new_user.email + " has been registered.", "action": "/login", "action_desc": "log in" } return render(request, "info.html", data) if User.objects.filter(name=confirmed_ticket.name).exists(): data = { "header": "Error!", "desc": "User "+new_user.name + " has been registered.", "action": "/login", "action_desc": "log in" } return render(request, "info.html", data) if confirmed_ticket.has_expired(): data = { "header": "Error!", "desc": "Link Expiered", "action": "/login", "action_desc": "log in" } confirmed_ticket.expired = True confirmed_ticket.save() return render(request, "info.html", data) confirmed_ticket.expired = True confirmed_ticket.save() new_user.name = confirmed_ticket.name new_user.email = confirmed_ticket.email new_user.passwd = confirmed_ticket.passwd new_user.save() data = { "header": "Success!", "desc": new_user.name+", You have confirmed your registration", "action": "/login", "action_desc": "log in" } return render(request, "info.html", data) return HttpResponse(str(reg_id))
def register(request): if request.session.get('is_login', None): return redirect('/index/') if request.method == 'POST': register_form = forms.RegisterForm(request.POST) message = '请检查填写内容!' if register_form.is_valid(): username = register_form.cleaned_data.get('username') password1 = register_form.cleaned_data.get('password1') password2 = register_form.cleaned_data.get('password2') email = register_form.cleaned_data.get('email') sex = register_form.cleaned_data.get('sex') if password1 != password2: message = '两次输入密码不同!' return render(request, 'login/register.html', locals()) else: same_name_user = User.objects.filter(name=username) print(same_name_user) if same_name_user: message = "用户已经存在" return render(request, 'login/register.html', locals()) same_email_user = User.objects.filter(email=email) if same_email_user: message = '该邮箱已经被注册!' return render(request, 'login/register.html', locals()) new_user = User() new_user.name = username new_user.password = hash_code(password1) # new_user.password = password1 new_user.email = email new_user.sex = sex new_user.save() code = make_confirm_string(new_user) send_email(email, code) return redirect('/login/') else: return render(request, 'login/register.html', locals()) register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): # 登录状态不允许注册。你可以修改这条原则! return redirect("/") if request.method == "POST": register_form = RegisterForm(request.POST) message = "请检查填写的内容!" if register_form.is_valid(): # 获取数据 username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: # 判断两次密码是否相同 message = "两次输入的密码不同!" return render(request, 'register.html', locals()) else: password = make_password(password1, None, 'pbkdf2_sha1') same_name_user = User.objects.filter(name=username) if same_name_user: # 用户名唯一 message = '用户已经存在,请重新选择用户名!' return render(request, 'register.html', locals()) same_email_user = User.objects.filter(email=email) if same_email_user: # 邮箱地址唯一 message = '该邮箱地址已被注册,请使用别的邮箱!' return render(request, 'register.html', locals()) # 当一切都OK的情况下,创建新用户 new_user = User() new_user.name = username new_user.password = password new_user.email = email new_user.sex = sex new_user.save() code = make_confirm_string(new_user) send_email(email, code) message = '请前往注册邮箱,进行邮件确认!' return render(request, 'confirm.html', locals()) # 跳转到等待邮件确认页面。 register_form = RegisterForm() return render(request, 'register.html', locals())
def register(request): if request.session.get('is_login', None): # 登录状态不允许注册。你可以修改这条原则! return redirect(reverse('user:index')) if request.method == "POST": register_form = RegisterForm(request.POST) message = "请检查填写的内容!" if register_form.is_valid(): # 获取数据 username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: # 判断两次密码是否相同 message = "两次输入的密码不同!" return render(request, 'login/register.html', locals()) else: same_name_user = User.objects.filter(name=username) if same_name_user: # 用户名唯一 message = '用户已经存在,请重新选择用户名!' return render(request, 'login/register.html', locals()) same_email_user = User.objects.filter(email=email) if same_email_user: # 邮箱地址唯一 message = '该邮箱地址已被注册,请使用别的邮箱!' return render(request, 'login/register.html', locals()) # 当一切都OK的情况下,创建新用户 new_user = User() new_user.name = username new_user.password = hash_code(password1) new_user.email = email new_user.sex = sex new_user.save() code = fonfirm_email_code(new_user) send_email(email, code) message = '请到你的邮箱中确认注册信息' return render(request, 'login/confirm.html', locals()) register_form = RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): return redirect(reverse('login:index')) if request.method == 'POST': register_form = forms.RegisterForm(request.POST) message = '请检查填写的内容' if register_form.is_valid(): username = register_form.cleaned_data.get('username') password1 = register_form.cleaned_data.get('password1') password2 = register_form.cleaned_data.get('password2') email = register_form.cleaned_data.get('email') sex = register_form.cleaned_data.get('sex') if password1 != password2: message = '两次密码不一致' return render(request, 'login/register.html', locals()) else: same_name_user = User.objects.filter(name=username) if same_name_user: message = '用户名已存在' return render(request, 'login/register.html', locals()) same_email_user = User.objects.filter(email=email) if same_email_user: message = '该邮箱已经注册' return render(request, 'login/register.html', locals()) new_user = User() new_user.name = username new_user.password = hash_code(password1) new_user.email = email new_user.sex = sex new_user.save() # return redirect('/login/') code = make_confirm_string(new_user) send_email(email, code) message = '请前往邮箱确认' return render(request, 'login/confirm.html', locals()) else: return render(request, 'login/register.html', locals()) register_form = forms.RegisterForm() return render(request, 'login/register.html', locals())
def register(request): if request.session.get('is_login', None): return redirect('/index/') if request.method == 'POST': register_form = RegisterForm(request.POST) message = '请检查填写的内容' if register_form.is_valid(): #获取数据 username = register_form.cleaned_data['username'] password1 = register_form.cleaned_data['password1'] password2 = register_form.cleaned_data['password2'] email = register_form.cleaned_data['email'] sex = register_form.cleaned_data['sex'] if password1 != password2: #判断两次密码是否相同 message = "两次输入的密码不同" return render(request, 'login/register.html', locals()) else: same_name_user = User.objects.filter(name=username) if same_name_user: #用户名唯一 message = '用户名已经存在,请重新选择用户名!' return render(request, 'login/register.html', locals()) same_email_user = User.objects.filter(email=email) if same_email_user: #邮箱唯一 message = '该邮箱地址已被注册,请使用别的邮箱!' return render(request, 'login/register.html', locals()) # 当一切都正常的情况下,创建新用户 new_user = User() new_user.name = username new_user.password = hash_code(password1) new_user.email = email new_user.sex = sex new_user.save() code = make_confirm_string(new_user) send_email(email, code) return redirect('/login/') register_form = RegisterForm() return render(request, 'login/register.html', locals())