コード例 #1
0
ファイル: views.py プロジェクト: glorygithub/CreativeWriting
def register(request):
    if request.method == "POST":
        uf = UserForm(request.POST)
        if uf.is_valid():
            #获取表单信息
            username = uf.cleaned_data['username']
            email = uf.cleaned_data['email']
            password1 = uf.cleaned_data['password1']
            password2 = uf.cleaned_data['password2']
            filterResult = User.objects.filter(username=username)
            if len(filterResult) > 0:
                return render_to_response('register.html', {"errors": "用户名已存在"})
            else:
                errors = []
                if (password2 != password1):
                    errors.append("两次输入的密码不一致!")
                    return render_to_response('register.html', {'errors': errors})
            #将表单写入数据库
            user = User()
            user.username = username
            user.password = password1
            user.email = email
            user.save()
            #返回注册成功页面
            return render_to_response('success.html',{'username':username,'operation':"注册"})
    else:
        uf = UserForm()
    return render_to_response('register.html',{'uf':uf})
コード例 #2
0
ファイル: views.py プロジェクト: glorygithub/CreativeWriting
def signupc(request):
    un = request.POST.get('username1')
    em = request.POST.get('email')
    pw1 = request.POST.get('password1')
    pw2 = request.POST.get('password2')
    print(pw2)
    print(pw1)
    filterResult = User.objects.filter(username=un)
    if len(filterResult) > 0:
        return render_to_response('CreativeWriting.html', {"errors2": "Username already exists!"})
    else:
        errors = []
        if (pw2 != pw1):
            errors.append("The password entered twice is inconsistent!")
            return render_to_response('CreativeWriting.html', {'errors2': errors})
            # 将表单写入数据库
        user = User()
        user.username = un
        user.password = pw1
        user.email = em
        user.save()
        # 返回注册成功页面
        return render_to_response('CreativeWriting.html', {"errors": "registration success!"})

    return render_to_response('CreativeWriting.html')
コード例 #3
0
ファイル: views.py プロジェクト: flyskyvp/ppp
def register(request):
    if request.method == "POST":
        uf = UserForm(request.POST)
        if uf.is_valid():
            #获取表单信息
            username = uf.cleaned_data['username']
            password = uf.cleaned_data['password']
            email = uf.cleaned_data['email']
            #将表单写入数据库
            user = User()
            user.username = username
            user.password = password
            user.email = email
            user.save()
            # print 'register info:',user.username,user.password,user.email

            #返回注册成功页面
            return render_to_response('success.html', {
                'username': username,
                'action': '注册'
            },
                                      context_instance=RequestContext(request))
    else:
        uf = UserForm()
    return render_to_response('register.html', {'uf': uf})
コード例 #4
0
 def setUp(self):
     self.app = create_app('test')
     self.app_context = self.app.app_context()
     self.app_context.push()
     db.create_all()
     self.client = self.app.test_client()
     tag = Tag()
     tag.name = 'tagx'
     db.session.add(tag)
     category = Category()
     category.name = 'categoryx'
     db.session.add(category)
     db.session.commit()
     article = Article()
     article.title = 'articlex'
     article.slug = 'slugx'
     article.category = category
     article.content = 'contentx'
     article.tags = [tag]
     db.session.add(category)
     db.session.commit()
     user = User()
     user.name = 'admin'
     user.password = '******'
     db.session.add(user)
     db.session.commit()
コード例 #5
0
def regist(request):
    if request.method == "GET":
        return render(request, 'regist.html')

    elif request.method == "POST":
        username = request.POST.get('username')
        password = request.POST.get('password')
        email = request.POST.get('email')
        icon = request.FILES.get('icon')

        users = User.objects.filter(username=username)
        # print(users)
        # print(type(users))
        if users.exists():
            #
            return render(request,
                          'notice.html',
                          context={
                              'code': -1,
                              'msg': "用户名已存在",
                              'wait': 2,
                              'url': "/blog/regist"
                          })
        user = User()
        user.username = username
        user.password = make_pwd(password)
        user.email = email
        user.icon = icon
        user.resgist_time = datetime.today().strftime("%Y/%m/%d/%H/%M/%S")
        request.session["user_id"] = user.id
        request.session["user_name"] = user.username

        #生成token
        token = str(uuid.uuid4())
        user.u_token = token
        user.save()

        # 发送邮箱内部的模板并且将token值和username传过去;将邮件发给表单传过来的用户邮箱。
        subject, from_email, to = 'html', settings.EMAIL_FROM, email
        html_content = loader.get_template('activite.html').render({
            'username':
            username,
            'u_token':
            token
        })
        msg = EmailMultiAlternatives(subject, from_email=from_email, to=[to])
        msg.attach_alternative(html_content, "text/html")
        msg.send()

        cache.set('token', token, timeout=1800)

        return render(request,
                      'notice.html',
                      context={
                          'code': 1,
                          'msg': "注册成功,请尽快去邮箱激活!",
                          'wait': 3,
                          'url': "/blog/index"
                      })
コード例 #6
0
 def post(self, request):
     regform = RegForm(
         request.POST)  # 通过注册表单获取用户提交的内容(form表单中的name字段),然后创建实例regform
     if regform.is_valid():  # 若表单有效性验证成功
         username = request.POST.get("email", "")  # 获取用户/邮箱/密码信息
         email = request.POST.get("email", "")
         password = request.POST.get("password", "")
         user = User()  # 创建用户实例
         user.username = username  # 为用户名/邮箱/密码数据属性赋值
         user.email = email
         user.password = password
         user.password = make_password(password)  # 将密码加密处理
         user.save()  # 保存到数据库(除了用save,也可以用create方式)
         return render(request, "login.html")  # 验证有效之后,返回登录页面
     else:
         return render(request, "reg.html",
                       {"regform": regform})  # 如果表单验证失败,则停留在注册页面
コード例 #7
0
def register():
    form = RegistrationForm()
    if form.validate_on_submit():
        user = User(email=form.email.data, username=form.username.data)
        user.password = form.password.data
        db.session.add(user)
        db.session.commit()
        flash('注册成功~~')
        return redirect(url_for('auth.login'))
    return render_template('auth/register.html',
                           form=form,
                           Permission=Permission)
コード例 #8
0
ファイル: conftest.py プロジェクト: tranvietphuoc/flask-blog
def init_database():
    # create the database and the database table
    db.create_all()

    # Insert user data
    user1 = User()
    user1.username = '******'
    user1.email = '*****@*****.**'
    user1.password = '******'
    db.session.add(user1)

    user2 = User()
    user2.username = '******'
    user2.email = '*****@*****.**'
    user2.password = '******'
    db.session.add(user2)

    # commit the changes for the users
    db.session.commit()

    yield db  # this is where testing happens!
    db.drop_all()
コード例 #9
0
ファイル: views.py プロジェクト: lshuining/blog-dome1
def register(request):
    if request.method == 'POST':
        user_name = request.POST.get('username', '')
        pass_word_1 = request.POST.get('password_1', '')
        pass_word_2 = request.POST.get('password_2', '')
        nick_name = request.POST.get('nickname', '')
        email = request.POST.get('email', '')
        avatar = request.FILES.get('avatar')
        if User.objects.filter(username=user_name):
            return render(request, 'register.html', {'error': '用户已存在'})
            #将表单写入数据库
        if (pass_word_1 != pass_word_2):
            return render(request, 'register.html', {'error': '两次密码请输入一致'})
        user = User()
        if avatar:
            user.avatar = 'media/' + user_name + '.png'
            img = Image.open(avatar)
            size = img.size
            print(size)
            # 因为是要圆形,所以需要正方形的图片
            r2 = min(size[0], size[1])
            if size[0] != size[1]:
                img = img.resize((r2, r2), Image.ANTIALIAS)

                # 最后生成圆的半径
            r3 = int(r2 / 2)
            img_circle = Image.new('RGBA', (r3 * 2, r3 * 2),
                                   (255, 255, 255, 0))
            pima = img.load()  # 像素的访问对象
            pimb = img_circle.load()
            r = float(r2 / 2)  # 圆心横坐标

            for i in range(r2):
                for j in range(r2):
                    lx = abs(i - r)  # 到圆心距离的横坐标
                    ly = abs(j - r)  # 到圆心距离的纵坐标
                    l = (pow(lx, 2) + pow(ly, 2))**0.5  # 三角函数 半径

                    if l < r3:
                        pimb[i - (r - r3), j - (r - r3)] = pima[i, j]
            img_circle.save('blog/static/media/' + user_name + '.png')
        user.username = user_name
        user.password = pass_word_1
        user.email = email
        user.nickname = nick_name
        user.save()
        #返回注册成功页面
        return render(request, 'index_unlog.html')
    else:
        return render(request, 'register.html')
コード例 #10
0
ファイル: views.py プロジェクト: ShoneKey/blog
 def register_view(self):
     form = RegistrationForm(request.form)
     if helpers.validate_form_on_submit(form):
         user = User()
         form.populate_obj(user)
         user.password = generate_password_hash(form.password.data)
         db.session.add(user)
         db.session.commit()
         login_user(user)
         return redirect(url_for('.index'))
     link = '<p>Already have an account? <a href="' + url_for(
         '.login_view') + '">Click here to log in.</a></p>'
     self._template_args['form'] = form
     self._template_args['link'] = link
     return super(MyAdminIndexView, self).index()
コード例 #11
0
ファイル: views.py プロジェクト: hwddzx/blog
 def post(self, request):
     # 接收参数
     data = request.POST
     # 验证数据合法性
     form = UserForm(data)
     if form.is_valid():
         # 保存数据库
         user = User()
         user.phone = form.cleaned_data.get('phone')
         user.password = set_password(form.cleaned_data.get('password'))
         user.save()
         # 跳转到登录
         return redirect('blog:登录')
     else:
         return render(request, 'blog/reg.html', context=form.errors)
コード例 #12
0
ファイル: manage.py プロジェクト: feel-easy/flask_blog
def create_supper_user(name, password):
    if not all([name, password]):
        print('参数缺失')
    user = User()
    user.nick_name = name
    user.mobile = name
    user.password = password
    user.is_admin = True
    try:
        db.session.add(user)
        db.session.commit()
    except Exception as e:
        db.session.rollback()
        print(e)
    print('管理员创建成功')
コード例 #13
0
ファイル: manage.py プロジェクト: feeneyp/blogful
def adduser():
    user = User()
    user.name = raw_input("Name: ")
    email = raw_input("Email: ")
    if email == session.query(User).filter(User.email==email).first():
        print "Someone's already registered with that email."
        return
    user.email = email  
    password = ""
    password2 = ""
    while not (password and password2) or password != password2:
        password = getpass("Password:"******"Repeat password:")
    user.password = generate_password_hash(password)
    session.add(user)
    session.commit()
コード例 #14
0
def regit(req):
    if req.method == "POST":
        uf = UserForm(req.POST)
        if uf.is_valid():
            username = uf.cleaned_data['username']
            password = uf.cleaned_data['password']
            usermail = uf.cleaned_data['usermail']
            user = User()
            user.username = username
            user.password = password
            user.usermail = usermail
            user.save()
            return HttpResponseRedirect('/login/')
    else:
        uf = UserForm()
    return render(req,'regit.html',{'uf':uf})
コード例 #15
0
ファイル: views.py プロジェクト: oencoding/mybgi
def register(request):
    username = request.POST.get('usernameReg', '')
    password = request.POST.get('passwordReg', '')
    email = request.POST.get('emailReg', '')
    profilePhoto = request.POST.get('profilePhoto', '')
    articleid = request.POST.get('articleid', '')
    if username == '' or password == '' or email == '':
        message = '输入错误了,快说你是怎么进的这个页面!'
    else:
        if profilePhoto == '':
            profilePhoto = '/static/img/deafaultprofilePhoto.png'
        user = User()
        user.name = username
        user.password = password
        user.email = email
        user.profilePhoto = profilePhoto
        try:
            userInDB = User.objects.get(name=username)
        except:
            userInDB = None
        if userInDB:
            message = '非常抱歉,你已经注册过了!'
        else:
            user.save()
            message = '哈哈!注册成功了啦(原谅老夫的少女心)!'
            request.session['name'] = user.name
    article = Article.objects.get(id=articleid)
    articles = mdToHtml([article])
    try:
        comments = Comment.objects.filter(article=article)
        i = 1
        for comment in comments:
            comment.floor = i
            i += 1
    except:
        comments = None
    try:
        username = request.session.get('name')
        user = User.objects.get(name=username)
    except:
        username = None
        user = None
    comments = mdToHtml(comments)
    context = {'config': configList,
               'articles': articles, 'comments': comments, 'user': user, 'message': message}
    return render(request, 'blogs.html', context=context)
コード例 #16
0
ファイル: logon.py プロジェクト: wangjing1215/problog
def signin(request):
    if request.POST:
        adduser = User()
        adduser.name = request.POST['username']
        if (User.objects.filter(name=request.POST['username'])):
            msg = 'this name has existed,srory!try a good one!'
            return render(request, "signup.html", {'msg': msg})
        if request.POST['username'] in [
                'Username', 'username'
        ] and request.POST['password'] == 'password':
            msg = 'username can not be blank'
            return render(request, "signup.html", {'msg': msg})
        adduser.password = request.POST['password']
        adduser.save()
        msg = 'sign in ok,please log on!'
        return render(request, "logon.html", {'msg': msg})
    return render(request, "signup.html")
コード例 #17
0
def register(request):
    # pass
    if request.method == "POST":
        user_name = request.POST.get('username', '')
        pass_word_1 = request.POST.get('password_1', '')
        pass_word_2 = request.POST.get('password_2', '')
        nick_name = request.POST.get('nickname', '')
        email = request.POST.get('email', '')
        avatar = request.FILES.get('avatar')
        if User.objects.filter(username=user_name):
            return render(request, 'blog/register.html', {'error': '用户已存在'})
        if (pass_word_1 != pass_word_2):
            return render(request, 'blog/register.html', {'error': '两次密码输入不一致'})
        user = User()

        # 将头像设置为圆形
        if avatar:
            user.avatar = 'media/' + user_name + '.png'
            img = Image.open(avatar)
            size = img.size
            r2 = min(size[0], size(1))
            if size[0] != size[1]:
                img = img.resize((r2, r2), Image.ANTIALIAS)
            r3 = int(r2 / 2)
            img_circle = Image.new('RGBA', (r3 * 2, r3 * 2), (255, 255, 255, 0))
            pima = img.load()
            pimb = img_circle.load()
            r = float(r2 / 2)
            for i in range(r2):
                for j in range(r2):
                    lx = abs(i - r)
                    ly = abs(j - r)
                    l = (pow(lx, 2) + pow(ly, 2)) ** 0.5
                    if l < r3:
                        pimb[i - (r - r3), j - (r - r3)] = pima[i, j]
            img_circle.save('static/media/' + user_name + '.png')
        user.username = user_name
        user.password = pass_word_1
        user.email = email
        user.nickname = nick_name
        user.save()
        return render(request, 'blog/index_unlogin.html')
    else:
        return render(request, 'blog/register.html')
コード例 #18
0
ファイル: views.py プロジェクト: ComingLeaves/DemlutionWork
def regist(request):
    if request.method == 'POST':
        email = request.POST.get('email', '')
        username = request.POST.get('username', '')
        password = request.POST.get('password', '')
        rpassword = request.POST.get('rpassword', '')
        if password != rpassword:
            return render(request, 'login.html', {'error': '两次密码输入不符!'})
        if User.objects.filter(email=email):
            return render(request, 'login.html', {'error': '用户已存在'})
        user = User()
        user.username = username
        user.email = email
        user.password = password
        user.save()

        return render(request, 'login.html', {'info': '注册成功,请继续登录操作!'})
    else:
        return render(request, 'login.html', {'error': '数据库异常,请稍后再试!'})
コード例 #19
0
ファイル: user.py プロジェクト: reema-eilouti/Flask_Blog_V2
def add_user():

    add_user_form = AddUserForm()

    if add_user_form.validate_on_submit():

        user = User()
    
        user.username = add_user_form.username.data
        user.password = add_user_form.password.data
        user.first_name = add_user_form.first_name.data
        user.last_name = add_user_form.last_name.data
        user.biography = add_user_form.biography.data

        user.save()        

        return redirect("/users")

    return render_template('user/index.html' , form = add_user_form )
コード例 #20
0
ファイル: views.py プロジェクト: Fudongyuan/Django_blog
def logon(request):
    username = request.POST.get('username')
    password = request.POST.get('password')
    phone = request.POST.get('phone')
    yzm = request.POST.get('yzm')

    # session 取出验证码
    yzm1 = request.session.get('yzm')
    yzm1 = str(yzm1)
    #print(yzm, yzm1)
    if yzm == yzm1:
        user = User()
        user.user_name = username
        user.password = md_5(password)
        user.user_phone = phone
        user.save()
        return HttpResponse('注册成功')

    return HttpResponse('验证码错误')
コード例 #21
0
ファイル: views.py プロジェクト: 0helloword/DjangoBlogTest
def zhuce(request):
    if request.method == 'GET':
        rform = ZhuceForm()
        return render(request, 'zhuce.html', context={'rform': rform})
    else:
        rform = ZhuceForm(request.POST)
        if rform.is_valid():
            print(rform.cleaned_data)
            username = rform.cleaned_data.get('username')  # 从校验通过的数据中获取对应的参数值
            password = rform.cleaned_data.get('password')
            phone = rform.cleaned_data.get('phone')
            user = User()
            user.username = username
            user.password = password
            user.phone = phone
            user.save()
        else:
            return render(request, 'zhuce.html', context={'rform': rform})
        return HttpResponse('注册成功')
コード例 #22
0
ファイル: views.py プロジェクト: cuiyanan89/Python
def register(req):
    if req.method=="POST":
        uf = UserForm(req.POST,req.FILES)
        if uf.is_valid():
            data = uf.cleaned_data
            data['password'] = hashlib.md5(data['password']).hexdigest()
            print data
            user = User()
            user.username = data['username']
            user.password = data['password']
            user.email = data['email']
            user.birthday = data['birthday']
            user.headimg = data['headimg']
            user.desc = data['desc']
            user.sex = data['sex']
            user.save()
            return HttpResponse('ok')
    else:
        uf = UserForm()
    return render(req,'register.html',{"uf":uf})
コード例 #23
0
ファイル: views.py プロジェクト: githubfqy/EasyDown
def register(request):
    if request.method == 'POST':
        user_name = request.POST.get('username', '')
        pass_word_1 = request.POST.get('password_1', '')
        pass_word_2 = request.POST.get('password_2', '')
        nick_name = request.POST.get('nickname', '')
        email = request.POST.get('email', '')
        if User.objects.filter(username=user_name):
            return render(request, 'register.html', {'error': '用户已存在'})
            #将表单写入数据库
        if (pass_word_1 != pass_word_2):
            return render(request, 'register.html', {'error': '两次密码请输入一致'})
        user = User()
        user.username = user_name
        user.password = make_password(pass_word_1)
        user.email = email
        user.nickname = nick_name
        user.save()
        #返回注册成功页面
        return render_to_response('home_unlog.html')
    else:
        return render(request, 'register.html')
コード例 #24
0
ファイル: views.py プロジェクト: feel-easy/flask_blog
def register():
    """
    用户注册
    1、获取参数,mobile,sms_code,password
    2、检查参数完整性
    3、检查手机号的格式
    4、尝试从redis中获取真实的短信验证码
    5、判断获取结果是否存在
    6、先比较短信验证码是否正确
    7、删除redis中存储的短信验证码
    8、构造模型类对象,存储用户信息
    9、提交数据到数据库中
    10、缓存用户信息到redis数据库中
    11、返回结果
    :return:
    """
    # 获取参数
    mobile = request.json.get('mobile')
    sms_code = request.json.get('sms_code')
    password = request.json.get('password')
    # 检查参数的完整性
    if not all([mobile, sms_code, password]):
        return jsonify(errno=RET.PARAMERR, errmsg='参数缺失')
    # 使用正则校验手机号格式
    if not re.match(r'1[3456789]\d{9}$', mobile):
        return jsonify(errno=RET.PARAMERR, errmsg='手机号格式错误')
    # 从redis中获取真实的短信验证码
    try:
        real_sms_code = redis_store.get('SMSCode_' + mobile)
    except Exception as e:
        current_app.logger.error(e)
        return jsonify(errno=RET.DBERR, errmsg='获取数据失败')
    # 判断获取结果是否存在
    if not real_sms_code:
        return jsonify(errno=RET.NODATA, errmsg='数据已过期')
    # 比较短信验证码是否一致
    # if real_sms_code != str(sms_code):
    #     return jsonify(errno=RET.DATAERR,errmsg='短信验证码不一致')
    # 删除短信验证码
    try:
        redis_store.delete('SMSCode_' + mobile)
    except Exception as e:
        current_app.logger.error(e)
    # 判断手机号是否已注册
    try:
        user = User.query.filter_by(mobile=mobile).first()
    except Exception as e:
        current_app.logger.error(e)
        return jsonify(errno=RET.DBERR, errmsg='查询用户数据失败')
    else:
        if user:
            return jsonify(errno=RET.DATAEXIST, errmsg='手机号已注册')
    # 保存用户信息
    user = User()
    user.mobile = mobile
    user.nick_name = mobile
    # 实际上调用了模型类中的password方法,实现了密码加密存储,generate_password_hash
    user.password = password
    # 提交数据到mysql
    try:
        db.session.add(user)
        db.session.commit()
    except Exception as e:
        current_app.logger.error(e)
        db.session.rollback()
        return jsonify(errno=RET.DBERR, errmsg='保存数据失败')
    # 缓存用户信息
    session['user_id'] = user.id
    session['mobile'] = mobile
    session['nick_name'] = mobile
    # 返回结果
    return jsonify(errno=RET.OK, errmsg='OK')