コード例 #1
0
ファイル: views.py プロジェクト: frostBingNing/myPython
    def post(self, request):
        register_form = RegisterForms(request.POST)
        if register_form.is_valid():
            # 若果用户输入的创建的信息正确 那么就可以进行入库操作
            email = request.POST.get('email', '')
            # 注册的时候 用户名重复的现象
            if UserProfile.objects.filter(username=email):
                return render(request, "register.html", {
                    'register_form': register_form,
                    'msg': '用户名已存在'
                })
            pass_word = request.POST.get("password", '')
            #在这里要进行邮箱激活验证操作
            user = UserProfile()  # 实例化一个user 对象
            user.username = email
            user.is_active = False  # 这里还没有激活  所以还是0 状态
            user.email = email  # 在这里 昵称 和 邮箱是一样的   原因就是使用了邮箱来创建用户
            user.password = make_password(pass_word)  # 加密操作
            user.save()  # 保存进数据库
            send_register_email(email, "register")
            return render(request, "active_err.html")

            # return render(request,"激活链接")
        else:
            register_form_odd = RegisterForms()
            return render(request, "register.html", {
                'register_err': register_form,
                'register_form': register_form_odd
            })
コード例 #2
0
    def post(self, request, *args, **kwargs):
        register_form = RegisterForm(request.POST)
        # print(request.POST.get("username",""),'\n')
        # print(request.POST.get("password",""),'\n')
        if register_form.is_valid():
            user_name = request.POST.get("username", "")
            if UserProfile.objects.filter(email=user_name):
                msg = "邮箱已被注册!"
                register_form._errors["msg"] = register_form.error_class([msg])
                return render(request, "register.html",
                              {"register_form": register_form})
            password = request.POST.get("password", "")
            user_profile = UserProfile()
            user_profile.username = user_name
            user_profile.email = user_name
            user_profile.is_active = False
            user_profile.password = make_password(password)
            user_profile.save()

            if send_email(user_name, "register"):
                return render(request, "send_success.html")
            else:
                return render(request, "send_fail.html")

        else:
            messages.info(request, "邮箱地址非法!")
            print(2333)
            return render(request, "register.html",
                          {"register_form": register_form})
コード例 #3
0
ファイル: views.py プロジェクト: guoyang1997/guoyang
    def post(self, request):
        print(1)
        register_form = RegisterForm(request.POST)
        if register_form.is_valid():
            print(2)
            user_name = request.POST.get('email')
            # 如果用户已存在,则提示错误信息
            capt_cha = request.POST.get('captcha')
            if UserProfile.objects.filter(email=user_name):

                return render(request, 'register.html', {
                    'register_form': register_form,
                    'msg': '用户已存在'
                })
            print(3)
            pass_word = request.POST.get('password')
            # 实例化一个user_profile对象
            user_profile = UserProfile()
            user_profile.username = user_name
            user_profile.email = user_name
            user_profile.is_active = False
            # 对保存到数据库的密码加密
            user_profile.password = make_password(pass_word)
            user_profile.save()
            send_register_eamil(user_name, 'register')
            return render(request, 'login.html')
        else:
            return render(request, 'register.html', {
                'register_form': register_form,
                'msg': '验证码错误'
            })
コード例 #4
0
    def post(self, request):
        register_form = RegisterForm(request.POST)
        if register_form.is_valid():
            user_name = request.POST.get("email", "")
            pass_word = request.POST.get("password", "")
            exist_user = UserProfile.objects.filter(
                Q(username=user_name) | Q(email=user_name))
            if exist_user:
                return render(request, "forgetpwd.html",
                              {'msg': "用户已经存在,若是本人忘记密码,请找回密码"})
            # 实例化一个user_profile对象,将前台值存入
            user_profile = UserProfile()
            user_profile.username = user_name
            user_profile.email = user_name
            user_profile.is_active = False

            # 加密password进行保存
            user_profile.password = make_password(pass_word)
            user_profile.save()
            send_register_email(user_name, 'register')

            # 给用户发送消息
            user_msg = UserMessage(user=user_profile.id)
            user_msg.message = '欢迎注册孟哥个网站'
            user_msg.save()

            return render(request, "login.html", {'msg': "激活连接已发送,注意查收"})
        else:
            return render(request, "register.html",
                          {"register_form": register_form})
コード例 #5
0
    def post(self, request):
        register_form = RegisterForm(request.POST)
        if register_form.is_valid():
            email = request.POST.get('email', '')
            pass_word = request.POST.get('password', '')
            if UserProfile.objects.filter(email=email):
                return render(request, 'register.html', {
                    'msg': '用户已经存在',
                    'register_form': register_form
                })
            user_profile = UserProfile()
            user_profile.username = email
            user_profile.email = email
            user_profile.password = make_password(pass_word)
            user_profile.is_active = False
            user_profile.save()
            # 写入欢迎注册消息
            user_message = UserMessage()
            user_message.user = user_profile.id
            user_message.message = '欢迎注册慕学在线网'
            user_message.save()

            send_register_email(email, 'register')
            return render(request, 'login.html')
        else:
            return render(request, 'register.html',
                          {'register_form': register_form})
コード例 #6
0
ファイル: views.py プロジェクト: Guovin/FreeStudy
 def post(self, request, *args, **kwargs):
     login_form = DynamicLoginPostForm(request.POST)
     dynamic_login = True
     banners = Banner.objects.all()[:3]
     if login_form.is_valid():#账号符合表单结构(forms中进行验证码匹配)
         #没有注册账号依然可以登录
         email = login_form.cleaned_data["email"]
         existed_users = UserProfile.objects.filter(email=email)#寻找数据库中该邮箱用户
         if existed_users:#如果账号存在
             user = existed_users[0]
         else:
             #新建一个用户
             user = UserProfile(username=email)
             password = generate_random(10, 2)
             user.set_password(password)
             user.email = email
             user.save()
         login(request, user)#登陆
         next = request.GET.get("next", "")
         if next:
             return HttpResponseRedirect(next)
         return HttpResponseRedirect(reverse("index"))
     else:
         d_form = DynamicLoginForm()
         return render(request, "login.html", {"login_form": login_form,
                                               "d_form": d_form,
                                               "banners":banners,
                                               "dynamic_login":dynamic_login})
コード例 #7
0
ファイル: views.py プロジェクト: EdwinXiang/onlineEducation
    def post(self, request):
        register_form = RegisterForm(request.POST)
        if register_form.is_valid():
            user_name = request.POST.get('email', None)
            # 如果用户已存在,则提示错误
            if UserProfile.objects.filter(email=user_name):
                return render(request, 'register.html', {
                    'register_form': register_form,
                    'msg': "用户已存在"
                })

            pass_word = request.POST.get('password', None)
            # 实例化一个用户对象
            user_profile = UserProfile()
            user_profile.username = user_name
            user_profile.email = user_name
            user_profile.is_active = False
            # 对保存到数据库的密码进行加密
            user_profile.password = make_password(pass_word)
            user_profile.save()
            send_register_eamil(user_name, 'register')
            return render(request, 'login.html')
        else:
            return render(request, 'register.html',
                          {'register_form': register_form})
コード例 #8
0
 def post(self,request):
     context = get_top_data(request)
     register_form = RegisterForm(request.POST)
     if register_form.is_valid():
         username = request.POST.get('username','')
         user = UserProfile.objects.filter(username=username).all()
         if user:
             return render(request, 'register.html', {'msg': '用户 {0} 已存在'.format(username),'register_form':register_form})
         email = request.POST.get('email','')
         password = request.POST.get('password','')
         surepassword = request.POST.get('surepassword','')
         if password != surepassword:
             context.update({'msg': '两次密码输入不一致','register_form':register_form})
             return render(request, 'register.html', context=context)
         user_profile = UserProfile()
         user_profile.username = username
         user_profile.email = email
         user_profile.password = make_password(password)
         user_profile.is_active = False
         user_profile.save()
         send_register_email(email,username,'register')
         context.update({'email_msg': '注册邮件已发送,请注意查收.', 'register_form': register_form})
         return render(request, 'register.html', context=context)
     context.update({'register_form':register_form})
     return render(request, 'register.html',context=context)
コード例 #9
0
 def post(self, request):
     forget_form = ForgetPwdForm()
     banners = Banner.objects.filter(type=3).order_by("index")
     modify_form = ModifyPwdForm(request.POST)
     if modify_form.is_valid():
         pwd1 = request.POST.get("password1", "")
         pwd2 = request.POST.get("password2", "")
         email = request.POST.get("email", "")
         active_code = request.POST.get("active_code", "")
         if pwd1 != pwd2:
             return render(
                 request, "password_reset.html", {
                     "email": email,
                     "active_code": active_code,
                     "msg": "两次输入密码不一致!"
                 })
         all_records = EmailVerifyRecord.objects.filter(
             code=active_code).last()
         if all_records.email != email:
             all_records.delete()
             return render(
                 request, 'forgetpwd.html', {
                     'forget_form': forget_form,
                     'msg': '发生未知错误,请再次发送邮件',
                     "banners": banners
                 })
         user = UserProfile.objects.filter(email=email).first()
         if user:
             user.set_password(pwd2)
             user.save()
         else:
             user_profile = UserProfile()
             user_profile.username = email
             user_profile.email = email
             user_profile.is_active = True
             user_profile.set_password(pwd2)
             user_profile.save()
         login_form = LoginForm()
         banners = Banner.objects.filter(type=3).order_by("index")
         all_records.delete()
         return render(request, "login.html", {
             'msg': '密码成功重置',
             'login_form': login_form,
             "banners": banners
         })
     else:
         email = request.POST.get("email", "")
         active_code = request.POST.get("active_code", "")
         return render(
             request, "password_reset.html", {
                 "email": email,
                 "active_code": active_code,
                 "modify_form": modify_form
             })
コード例 #10
0
 def post(self, request):
     register_form = RegisterForm(request.POST)
     if register_form.is_valid():
         user_name = request.POST.get("email", "")
         pass_word = request.POST.get("password", "")
         user_profile = UserProfile()
         user_profile.username = user_name
         user_profile.email = user_name
         user_profile.password = make_password(pass_word)
         user_profile.is_active = False
         user_profile.save()
         #向用户填写的邮箱发送激活邮件
         send_register_email(user_name, "register")
         return render(request, "login.html", {"msg": "请进入邮箱激活账户"})
     else:
         return render(request, 'register.html', {"msg": "请进入邮箱激活账户"})
コード例 #11
0
 def post(self, request):
     register_form = RegisterForm(request.POST)
     if register_form.is_valid():
         user_name = request.POST.get('email')
         pass_word = request.POST.get('password', '')
         user_profile = UserProfile()
         user_profile.username = user_name
         user_profile.email = user_name
         user_profile.password = make_password(pass_word)
         user_profile.save()
         # send_register_email(user_name,'register')
         return render(request, 'login.html')
     else:
         return render(request, 'register.html', {
             'register_form': register_form,
         })
コード例 #12
0
    def post(self, request):
        register_form = RegisterForm(request.POST)
        banners = Banner.objects.filter(type=3).order_by("index")
        if register_form.is_valid():
            user_name = request.POST.get('email', None)
            # 如果用户已存在,则提示错误信息
            user_exist = UserProfile.objects.filter(email=user_name)
            if user_exist:
                if user_exist.first().is_active == False:
                    all_records = EmailVerifyRecord.objects.filter(
                        email=user_name)
                    if all_records:
                        for record in all_records:
                            record.delete()
                    send_register_eamil(user_name, 'register')
                    return render(
                        request, 'register.html', {
                            'register_form': register_form,
                            'msg': '用户未激活,邮件已重发,请前往邮箱激活',
                            "banners": banners
                        })
                return render(
                    request, 'register.html', {
                        'register_form': register_form,
                        'msg': '用户已存在',
                        "banners": banners
                    })

            pass_word = request.POST.get('password', None)
            # 实例化一个user_profile对象
            user_profile = UserProfile()
            user_profile.username = user_name
            user_profile.email = user_name
            user_profile.is_active = False
            # 对保存到数据库的密码加密
            user_profile.set_password(pass_word)
            user_profile.save()
            send_register_eamil(user_name, 'register')
            return render(
                request, 'register.html', {
                    'register_form': register_form,
                    'msg': '邮件已发送,请前往邮箱激活',
                    "banners": banners
                })
        else:
            return render(request, 'register.html',
                          {'register_form': register_form})
コード例 #13
0
ファイル: views.py プロジェクト: huanglaoxie0503/Shares_Api
    def post(self, request):
        register_form = RegisterForm(request.POST)
        if register_form.is_valid():
            user_name = request.POST.get('email', '')
            if UserProfile.objects.filter(email=user_name):
                return render(request, 'register.html', {"register_form": register_form, "msg": "用户已经存在"})
            pass_word = request.POST.get('password', '')

            user_profile = UserProfile()
            user_profile.username = user_name
            user_profile.email = user_name
            user_profile.password = make_password(password=pass_word)
            user_profile.is_active = False
            user_profile.save()

            send_register_email(user_name, 'register')
            return render(request, 'login.html')
        else:
            return render(request, 'register.html', {"register_form": register_form})
コード例 #14
0
 def post(self, request):
     register_form = RegisterForm(request.POST)
     if register_form.is_valid():
         email = request.POST.get('email')
         if UserProfile.objects.filter(email=email):
             return render(request, 'register.html', {
                 'msg': '用户以注册',
                 'register_form': register_form
             })
         pass_word = request.POST.get('password')
         user_profile = UserProfile()
         user_profile.username = email
         user_profile.email = email
         user_profile.is_active = False
         user_profile.password = make_password(pass_word)
         user_profile.save()
         send_register_email(email, 'register')
         return render(request, 'login.html', {})
     else:
         return render(request, 'register.html',
                       {'register_form': register_form})
コード例 #15
0
ファイル: views.py プロジェクト: LDDINCH/mxonline
    def post(self, request):
        register_form = RegisterForm(request.POST)
        if register_form.is_valid():
            user_name = request.POST.get("email", "")
            if UserProfile.objects.filter(email=user_name):
                return render(request, 'register.html', {
                    'register_form': register_form,
                    'msg': '用户已存在'
                })
            pass_word = request.POST.get("password", "")
            user_profile = UserProfile()
            user_profile.username = user_name
            user_profile.email = user_name
            user_profile.is_active = False
            user_profile.password = make_password(pass_word)
            user_profile.save()

            send_register_email(user_name, 'register')
            return render(request, 'login.html')
        else:
            return render(request, 'register.html',
                          {'register_form': register_form})
コード例 #16
0
    def post(self, request, *args, **kwargs):

        # 验证请求
        check_forms = RegisterForms(request.POST)

        if check_forms.is_valid():

            rds = redis.Redis(host='localhost', port=6379, db=0)
            ajax_code = '*****@*****.**'
            code = int(rds.get(ajax_code))
            print(code)

            rds_code = int(rds.get('*****@*****.**'))
            print(bool(code == rds_code))
            if rds_code == code:
                email = check_forms.cleaned_data['email']
                password = check_forms.cleaned_data['password']
                isuser_exists = UserProfile.objects.filter(email=email)
                print(bool(isuser_exists))

                if isuser_exists:
                    user = isuser_exists[0]
                    login(request, user)
                else:
                    user = UserProfile()
                    # 给新建用户一个随机的验证码并加密
                    user.set_password(password)
                    user.email = email
                    user.username = email
                    user.save()
                    login(request, user)
                return render(request, 'index.html')
            else:
                return JsonResponse({'msg': '你写的不对'})
        else:
            check_forms = RegisterForms()

            return render(request, 'register.html',
                          {'check_forms': check_forms})
コード例 #17
0
ファイル: views.py プロジェクト: Guovin/FreeStudy
 def post(self, request, *args, **kwargs):
     register_post_form = RegisterPostForm(request.POST)
     if register_post_form.is_valid():
         email = register_post_form.cleaned_data["email"]
         password = register_post_form.cleaned_data["password"]
         # 新建一个用户
         user = UserProfile(username=email)  #username必须唯一,比如如果数据库存在该username,就会出现无法插入数据库记录错误。
         user.set_password(password)
         user.email = email
         user.save()
         login(request, user)
         new_message = "欢迎使用FreeStudy,祝您学习愉快!"
         messages = UserMessage()
         messages.user = request.user
         messages.message = new_message
         messages.save()
         return HttpResponseRedirect(reverse("index")) #注册成功返回主页
     else:
         register_get_form = RegisterGetForm()
         return render(request, "register.html", {
             "register_get_form":register_get_form,
             "register_post_form": register_post_form
         })
コード例 #18
0
    def post(self, request):
        register_form = RegisterForm(request.POST)
        if register_form.is_valid():
            username = request.POST.get('email', '')
            password = request.POST.get('password', '')

            # 判断是否邮箱已经注册
            if UserProfile.objects.filter(email=username):
                return render(request, 'register.html', {
                    'register_form': register_form,
                    'msg': '邮箱已经注册'
                })

            user_profile = UserProfile()
            user_profile.username = username
            user_profile.email = username
            user_profile.is_active = False
            user_profile.password = make_password(password)
            user_profile.save()
            send_register_email(user_profile.email, 'register')
            return render(request, 'login.html', {})
        else:
            return render(request, 'register.html',
                          {'register_form': register_form})