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()
def test_expired_confirmation_token(self): u = User(password='******') db.session.add(u) db.session.commit() token = u.generate_confirmation_token(1) time.sleep(2) self.assertFalse(u.confirm(token))
def signup(request): if request.method=='POST': name=request.POST['email'] password=request.POST['pass'] user = User(username=name,password=password) user.save() return HttpResponseRedirect(reverse('blog:blogindex'))
def test_invalid_reset_token(self): u = User(password='******') db.session.add(u) db.session.commit() token = u.generate_reset_token() self.assertFalse(User.reset_password(token + 'a', 'horse')) self.assertTrue(u.verify_password('cat'))
def sign_up(): """SIGN-UP page which allows users to register.""" if current_user.is_authenticated: flash("You have alredy logged in.") return redirect(url_for("app.home")) else: form = SignUpForm() if form.validate_on_submit(): user = User.query.filter_by(username=form.username.data).first() if user is None: user = User(username=form.username.data) user.set_password(form.password.data) db.session.add(user) db.session.commit() login_user(user) flash("Sucessfully registered.") flash("Sucessfully logged in.") return redirect(url_for("app.home")) flash("A user already exists with that email address.") return render_template( "sign-up.html", form=form, page_title="SIGN-UP", page_color="black", )
def test_valid_email_change_token(self): u = User(email='*****@*****.**', password='******') db.session.add(u) db.session.commit() token = u.generate_email_change_token('*****@*****.**') self.assertTrue(u.change_email(token)) self.assertTrue(u.email == '*****@*****.**')
def POST(self): action=self.param("action") name=self.param("name") slug=self.param("email") vals={'action':action,'postback':True} if not (name and slug): vals.update({'result':False,'msg':_('Please input dispname and email.')}) self.render2('views/admin/author.html',vals) else: if action=='add': author= User(dispname=name,email=slug ) author.user=db.users.User(slug) author.put() vals.update({'result':True,'msg':'Saved ok'}) self.render2('views/admin/author.html',vals) elif action=='edit': try: key=self.param('key') author=User.get(key) author.dispname=name author.email=slug author.user=db.users.User(slug) author.put() if author.isadmin: self.blog.author=name self.redirect('/admin/authors') except: vals.update({'result':False,'msg':_('Error:Author can''t been saved.')}) self.render2('views/admin/author.html',vals)
def signup(request): if request.method == 'POST': context={ 'username': request.POST['username'], 'name': request.POST['name'], 'request':request, } if request.POST['name'] and request.POST['username'] and request.POST['password'] and request.POST['password_confirm']: # d = datetime.datetime.now() if request.POST['password'] == request.POST['password_confirm']: u = User(username=request.POST['username'], password=hashlib.sha224(request.POST['password']+'key').hexdigest(), name=request.POST['name'], # date=d, # date_str=d.strftime('%B %d, %Y') ) u.save() request.session['user'] = u.username request.session['user_obj'] = u return HttpResponseRedirect(reverse('blog:index')) context['error_message'] = 'Password mismatch' else: context['error_message'] = 'Please fill in all fields' return render(request, 'blog/signup.html', context) return render(request, 'blog/signup.html', {'request': request})
def comment(request): if request.is_ajax(): form = CommentForm(request.POST) if form.is_valid(): blog_id = request.GET.get('blog_id') blog = get_object_or_404(Blog, pk=blog_id) blog.comment_num += 1 blog.save() # pre_comid = form.cleaned_data['pre_comid'] nickname = form.cleaned_data['anickname'] email = form.cleaned_data['bemail'] website = form.cleaned_data['cwebsite'] content = form.cleaned_data['dcontent'] photo = str(random.randint(0, 9)) + '.png' u = User(name=nickname, email=email, website=website, photo=photo) u.save() c = Comment(user=u, blog=blog, content=content, comment_time=timezone.now()) c.save() # sendCommentReply(email) # SendEmail_Comment(nickname,None) return ResponseMsg(True, u'谢谢你的评论') else: return ResponseMsg(False, form.errors.popitem()[1]) else: raise Http404
def test_valid_reset_token(self): u = User(password='******') db.session.add(u) db.session.commit() token = u.generate_reset_token() self.assertTrue(User.reset_password(token, 'dog')) self.assertTrue(u.verify_password('dog'))
def register(): if current_user.is_authenticated: return redirect(url_for("index")) form = RegistrationForm() if form.validate_on_submit(): if form.access_level.data == "599s1Z]76G4MVMX": user = User(access_level=1, username=form.username.data, password=form.password.data, fullname=form.fullname.data, email=form.email.data, phone_number=form.phone.data) db.session.add(user) db.session.commit() flash("Congratulations, you are now a registered teacher!") else: user = User(access_level=0, username=form.username.data, password=form.password.data, fullname=form.fullname.data, email=form.email.data, phone_number=form.phone.data) db.session.add(user) db.session.commit() flash("Congratulations, you are now a registered student!") return redirect(url_for("login")) return render_template("register.html", title="Register", form=form)
def test_user(self): """ User creation and authentication Create new user Add to database Login and out""" # Make a new user u = User(username, password, email) with self.app.app_context(): # Add to db db.session.add(u) db.session.commit() # Test queries self.assertIsNotNone(User.query.filter_by(username=username).first()) self.assertIsNotNone(User.query.filter_by(email=email).first()) # Test password secturity self.assertNotEqual(u.password, password) self.assertTrue(u.check_password(password)) # Try an incorrect log in rv = self.login(username, 'not_correct') self.assertIn(b'Invalid username or password', rv.data) # Try correct login rv = self.login(username, password) # Test if log in was succsessful self.assertEqual(rv.status_code, 200) self.assertIn(b"logged in", rv.data) # Try logout rv = self.logout() self.assertIn(b'You were logged out', rv.data)
def setUp(self): #调用app app.config.update( #处于测试环境 TESTING=True, #用缓存数据库 memory 内存数据库 SQLALCHEMY_DATABASE_URI="sqlite:///:memory:") # 往库中 db.create_all() user = User(name="Test", username="******") user.set_password("123456") movie = Movie(title="Test Movie Title", year="2020") #add一条上传 add_all 多条列表上传 db.session.add_all([user, movie]) db.session.commit() # 创建一个测试用的客户端模拟 浏览器 self.client = app.test_client() #创建测试命令运行器 self.runner = app.test_cli_runner()
def post(self, request): print(request.body) bodystr = request.body.decode('utf8') print('bodystr---->', bodystr) bodydict = json.loads(bodystr) print('bodydict---->', bodydict) js_code = bodydict.get('code') print('code------->', js_code) nickname = bodydict.get('nickname') print('nickname------->', nickname) appid = settings.APPID secret = settings.APPSECRET url = f'https://api.weixin.qq.com/sns/jscode2session?appid={appid}&secret={secret}&js_code={js_code}&grant_type=authorization_code' res = requests.get(url) print( res.text ) # {"session_key":"dVs1OcA9mGX+kUdnMRGQFQ==","openid":"omhrO4pE67Nrg2gfPkMGXZjh0v7M"} res_dict = json.loads(res.text) openid = res_dict.get('openid') if not openid: return HttpResponse('Authorize fail') request.session['openid'] = openid request.session['id_authorized'] = True if not User.objects.filter(openid=openid): newuser = User(openid=openid, nickname=nickname) newuser.save() return HttpResponse('Authorize post ok!')
def deploy(): """Run deployment tasks.""" upgrade() Role.insert_roles() User.self_follows()
class TestUserModelDb(unittest.TestCase): def setUp(self): self.db_fd, blog.app.config['DATABASE'] = tempfile.mkstemp() self.u = User("Test", "*****@*****.**", "password") #self.admin = User.query.get(1) db.session.add(self.u) def test_id_type(self): expected = unicode uid = self.u.get_id() assert type(uid) == expected @raises(RuntimeError) def test_auth_token(self): expected = "something" auth_token = self.u.get_auth_token() assert auth_token == expected #def tedst_repr(self): #expected = r"<User /d*?: '.*'>" #expected_type = str #representation = repr(self.admin) #assert False, representation #assert re.match(expected, representation) #assert type(representation) == expected_type def tearDown(self): db.session.rollback()
def admin_user(): email = raw_input('输入管理员邮箱:') inp = 1 while inp == 1: pwd1 = raw_input('输入管理员密码:') pwd2 = raw_input('确认管理员密码:') if pwd1 == pwd2: inp = 0 else: print '两次输入的不一样,请重新输入' continue print '--------------------------------' print '输入的管理员邮箱为:%s' % email print '输入的管理员密码为:%s' % pwd1 print '--------------------------------' if raw_input('确定(Y)').lower() == 'y': pwd = User.make_random_passwd(email=email) user = User(email=pwd['email'], role=1, nicename=email, passwd=pwd['pwdmd5'], is_locked=0, salt=pwd['salt']) user.register_date = datetime.now(), db.session.add(user) db.session.commit() print '保存设置...[确定]' else: exit()
def test_user_check(self): pwd = User.make_random_passwd(email='*****@*****.**') user = User(email=pwd['email'], passwd=pwd['pwdmd5'], salt=pwd['salt']) db.session.add(user) db.session.commit() is_true = User.user_check('*****@*****.**', pwd['pwd']) assert is_true == True
def create_user(self): hashed_password = bcrypt.generate_password_hash( self.password.data).decode('utf-8') user = User(username=self.username.data, email=self.email.data, password=hashed_password) user.save_to_db()
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" })
def test_ping(self): u = User(password='******') db.session.add(u) db.session.commit() time.sleep(2) last_seen_before = u.last_seen u.ping() self.assertTrue(u.last_seen > last_seen_before)
def save(self, validated_data): hashedpw = bcrypt.hashpw(validated_data['password'].encode('utf-8'), bcrypt.gensalt()).decode('utf8') user = User(username=validated_data['username'], password=hashedpw) user.save() return user
def test_token_from_another_user(self): user_test = User(username='******', email='*****@*****.**', password='******', image_file='Day view.jpg') db.session.add(user_test) db.session.commit() token = user_test.get_reset_token() self.assertFalse(self.user.verify_token(token))
def test_duplicate_email_change_token(self): u1 = User(email='*****@*****.**', password='******') u2 = User(email='*****@*****.**', password='******') db.session.add(u1) db.session.add(u2) db.session.commit() token = u2.generate_email_change_token('*****@*****.**') self.assertFalse(u2.change_email(token)) self.assertTrue(u2.email == '*****@*****.**')
def signup(request): global forms if request.method == 'POST': name = request.POST.get('Username'); password = request.POST.get('Password'); email = request.POST.get('Email'); user = User(name=name, password=make_password(password), email=email) user.save() return render(request, 'login.html', forms)
def test_token_difference(self): user_test = User(username='******', email='*****@*****.**', password='******', image_file='Day view.jpg') db.session.add(user_test) db.session.commit() token1 = self.user.get_reset_token() token2 = user_test.get_reset_token() self.assertNotEqual(token1, token2)
def register(request): name=request.POST['Name'] password=request.POST['Password'] hashedpassword=hashlib.md5(password.encode('utf-8')).hexdigest() user=User(name=name,password=hashedpassword) user.save() #categorynum=category.count() #t=loader.get_template("bloglist.html") #c=RequestContext(request,{'posts':post,'category':category}) return HttpResponseRedirect("/blog/"+str(user.id))
def setUp(self): self.app = create_app(config['testDB']) self.app_context = self.app.app_context() self.app_context.push() db.create_all() self.user = User(username='******', email='*****@*****.**', password='******', image_file='Night view.png') db.session.add(self.user) db.session.commit()
def like_post(post_id): username = session.get('username') if not username: flash('You must be logged in to like a post') return redirect(url_for('login')) user = User(username) user.like_post(post_id) flash('Liked post.') return redirect(request.referrer)
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)
def SignUpApi(request): if request.method == 'POST': email = request.POST.get('email') if User.objectl.get(email=email): return JsonResponse({'status':True, 'data':{ 'SignIn': False, 'Message': 'input email is not exist.' }}) user = User(name=request.POST.get('name'),password=make_password(request.POST.get('password')),email=email) user.save() return loginByToken(user) return render(request, 'login.html', forms)
def fake_admin(): admin = User(name='Difan Xue', username='******', email='*****@*****.**', bio=fake.sentence(), location=fake.city(), member_since=fake.date_this_decade(), website='http://xuedifan.pythonanywhere.com', ) admin.set_password('helloflask') db.session.add(admin) db.session.commit()
def test_make_unique_nickname(self): u = User(nickname='john', email='*****@*****.**') db.session.add(u) db.session.commit() nickname = User.make_unique_nickname('john') assert nickname != 'john' u = User(nickname=nickname, email='*****@*****.**') db.session.add(u) db.session.commit() nickname2 = User.make_unique_nickname('john') assert nickname2 != 'john' assert nickname2 != nickname
def register(): if current_user.is_authenticated: return redirect(url_for('index')) form = RegistrationForm() if form.validate_on_submit(): user = User(username=form.username.data, email=form.email.data) user.set_password(form.password.data) db.session.add(user) db.session.commit() flash('Congratulations, you are now a registered user!') return redirect(url_for('login')) return render_template('register.html', title='Register', form=form)
def search(request): if request.method == 'POST' : uf = UserForm1(request.POST) if uf.is_valid(): username = uf.cleaned_data['username'] print username user = User() user.name =username book_list=User.objects.filter(name__istartswith = user.name) return render_to_response('search_form.html',{'uf':uf,'book_list':book_list}) else: uf = UserForm1() return render_to_response('search_form.html',{'uf':uf})
def register(req): if req.method == "POST": uf = UserForm(req.POST,req.FILES) if uf.is_valid(): username = uf.cleaned_data['username'] headImg = uf.cleaned_data['headImg'] user = User() user.username = username user.headImg = headImg user.save() print username,'\n', headImg return HttpResponse('ok') else: uf = UserForm() return render_to_response('register.html',{'uf':uf})
def regist(req): print req.method if req.method == "POST": uf = UserForm(req.POST, req.FILES) print 'valid? : ', uf.is_valid() if uf.is_valid(): print 'uf is valid' user = User() user.name = uf.cleaned_data['username'] user.headImg = uf.cleaned_data['headImg'] user.save() print user.name return HttpResponse('ok') else: uf = UserForm() return render_to_response('register.html', {'uf':uf})
def register(request): if request.method == "POST": uf = UserForm(request.POST,request.FILES) if uf.is_valid(): #获取表单信息 username = uf.cleaned_data['username'] headImg = uf.cleaned_data['headImg'] #写入数据库 user = User() user.username = username user.headImg = headImg user.save() return HttpResponse('upload ok!') else: uf = UserForm() return render_to_response('register.html',{'uf':uf})
def register(request): if request.method == "POST" : uf = UserForm(request.POST,request.FILES) if uf.is_valid(): username = uf.cleaned_data['username'] headImg = uf.cleaned_data['headImg'] user = User() user.name =username user.headImg =headImg user.save() print username,headImg ua = request.META.get('HTTP_USER_AGENT', 'unknown') return HttpResponse("Your browser is %s" % ua) else : uf = UserForm() return render_to_response('register.html',{'uf':uf,'title':'baba'})
def login(self): form = FieldSet(User, data=self.request.POST if self.request.POST else None) form.configure( include=[form.email, form.password], options=[ form.password.password() ] ) if self.request.POST: user = Session.query(User).filter( (User.email==self.request.POST['User--email']) & (User.password==User.get_pass_hash(self.request.POST['User--password'])) ).first() if user is not None: session = self.request.session session['user_id'] = user.id session['user_name'] = user.nickname session['user_email'] = user.email return HTTPFound(location=self.request.GET.get('back_to', url('post', self.request))) print '\n\n\n\n\n' return dict(form=form)
def register(request): if request.method == 'POST': if Constant.SESSION_KEY in request.POST and 'password' in request.POST: un = request.POST['username'] pw = request.POST['password'] user = User.objects.filter(username=un) if user: context = {} context['message'] = '用户名已存在' return render(request,'register.html',context) request.session['username'] = un #save user user = User(username=un,password=pw) user.save() return HttpResponseRedirect('/') else: return render(request,'register.html')
def step2(request): facebook_interface = Facebook() token = facebook_interface.token_from_request(request) if token: user = User.from_facebook(facebook_interface) request.session['user_id'] = user.id return render_to_response('step2.html')
def register(request): if request.method == "POST": uf = UserForm(request.POST, request.FILES) if uf.is_valid(): print uf.cleaned_data username = uf.cleaned_data['username'] headImg = uf.cleaned_data['headImg'] print username, headImg user = User() user.username = username user.headImg = headImg user.save() return HttpResponse("ok") else: uf = UserForm() return render_to_response('register.html', {'uf': uf})
def POST(self,slug=None): try: linkcheck= self.request.get_all('checks') for key in linkcheck: author=User.get(key) author.delete() finally: self.redirect('/admin/authors')
def register(request): if ('email' or 'pwd') not in request.GET: lf = LoginForm() return render_to_response('register.html', {'lf': lf}) lf = LoginForm(request.GET) email = lf.data['email'] pwd = lf.data['pwd'] user = User() user.username = uuid.uuid1() user.email = email user.set_password(pwd) user.desc = 'lazy' user.save() user.user_permissions = [Permission.objects.get(name='Can see news'), Permission.objects.get(name='Can edit news')] return HttpResponseRedirect("/blog/login/")
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})
def register(request): if request.method == 'POST': uf = UserForm(request.POST, request.FILES) if uf.is_valid(): #print uf.cleaned_data['username'] #print request.FILES #fp = file('upload/' + uf.cleaned_data['headImage'].name, 'wb') #s = uf.cleaned_data['headImage'].read() #fp.write(s) #fp.close() username = uf.cleaned_data['username'] headImage = uf.cleaned_data['headImage'] user = User() user.usename = username user.headImage = headImage user.save() return HttpResponse('ok') else: uf = UserForm() return render_to_response('register.html',{'uf': uf})
def signin(request): """Signin Page enabling signin and new users to create an account""" if request.method == 'POST': form = SignInUserForm(request.POST) if form.is_valid(): # Hash the Password using md5 m = hashlib.md5() m.update(form.cleaned_data['password']) # Create the user user = User(username=form.cleaned_data['username'], password=m.hexdigest()) user.put() messages.add_message(request, messages.INFO, u'You are signed in. Please Log in now.') return redirect('home') else: form = SignInUserForm() return render(request, 'signin.html', locals())
def userchangepwd(): form = UserChangePwdForm() if form.validate_on_submit() and request.method == 'POST': flash(g.user.email) pwd = User.make_random_passwd(pwd=form.password.data, email=g.user.email) g.user.passwd = pwd['pwdmd5'] db.session.add(g.user) db.session.commit() flash(u'密码修改成功!') return redirect(url_for('usereditinfo')) return render_template('user/userchangepwd.html', title=u'修改密码', form=form)
def GET(self,slug=None): action=self.param("action") author=None if action and action=='edit': try: key=self.param('key') author=User.get(key) except: pass else: action='add' vals={'action':action,'author':author} self.render2('views/admin/author.html',vals)
def register(): from blog.extend.EmailHelper import register_mail form = RegisterForm(request.form) if request.method == 'POST' and form.validate(): pwd = User.make_random_passwd(email=form.email.data) user = User(email=pwd['email'], role=ROLE_USER, nicename=form.email.data, passwd=pwd['pwdmd5'], is_locked=User_LOCKED, register_ip=request.remote_addr, salt=pwd['salt']) user.register_date = datetime.datetime.now(), db.session.add(user) db.session.commit() user.passwd = pwd['pwd'] register_mail(user) flash(u'恭喜,注册成功!') Blog_info.new_user() return redirect(url_for('login')) return render_template('register.html', title=u'欢迎注册', form=form)
def login(request): """Login View enabling login into the blog""" if request.method == 'POST': form = LogInUserForm(request.POST) if form.is_valid(): user = User.gql("WHERE username = :username", username=form.cleaned_data['username']).fetch(1) request.session['user'] = user[0] messages.add_message(request, messages.INFO, u'You are signed in') return redirect('home') else: form = LogInUserForm() return render(request, 'login.html', locals())
def main(): if User.query.filter_by(nickname='admin').first(): print "Check the admin user." passwd = raw_input("Insert admin password: "******"Insert email address: ") if test_admin(passwd, email): print "Admin user matches." else: print "Doesn't matches." return print "You want to create a new admin user." passwd = raw_input("Insert admin password: "******"Insert email address: ") admin = User(nickname="admin", password=User.hash_password(passwd), email=email, role=ROLE_ADMIN) db.session.add(admin) db.session.commit() if test_admin(passwd, email): print "Admin user created successfully"
def GET(self): try: page_index=int(self.param('page')) except: page_index=1 authors=User.all().filter('isAuthor =',True) entries,pager=Pager(query=authors,items_per_page=15).fetch(page_index) self.render2('views/admin/authors.html', { 'current':'authors', 'authors':authors, 'pager':pager } )
def login(): if g.user is not None and g.user.is_authenticated(): return redirect(url_for('index')) form = LoginForm(request.form) if form.validate_on_submit() and request.method == 'POST': user = User.user_check(passwd=form.passwd.data, email=form.email.data) remember_me = form.remember_me.data if user: login_user(user, remember=remember_me) flash(u'恭喜,登录成功!') log = Login_log(email=user.email, ip=request.remote_addr) db.session.add(log) db.session.commit() Blog_info.new_login() return redirect(request.args.get("next") or url_for("index")) else: flash(u'用户名或密码错误') return redirect(url_for('login')) return render('login.html', title=u'请登陆', form=form)
def register(request): if request.method == "POST": uf = UserForm(request.POST) if uf.is_valid(): #获取表单信息 username = uf.cleaned_data['username'] passworld = uf.cleaned_data['passworld'] email = uf.cleaned_data['email'] #将表单写入数据库 user = User() user.username = username user.passworld = passworld user.email = email user.save() #返回注册成功页面 return render_to_response('blog/success.html',{'username':username}) else: uf = UserForm() return render_to_response('blog/register.html',{'uf':uf})