本文整理汇总了Python中werkzeug.generate_password_hash函数的典型用法代码示例。如果您正苦于以下问题:Python generate_password_hash函数的具体用法?Python generate_password_hash怎么用?Python generate_password_hash使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了generate_password_hash函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: test_friendship_manager_make_friends
def test_friendship_manager_make_friends(self):
user1 = User(
username='john1',
password=generate_password_hash('a'),
email='[email protected]'
)
user2 = User(
username='john2',
password=generate_password_hash('a'),
email='[email protected]'
)
db.session.add(user1)
db.session.add(user2)
db.session.commit()
Friend.objects.make_friends(user1.id, user2.id)
are_friends = Friend.objects.are_friends(user1.id, user2.id)
self.assertTrue(are_friends)
requests = Friend.objects.requests(user1.id)
self.assertEqual(requests, [], msg=None)
requests = Friend.objects.requests(user2.id)
self.assertEqual(requests, [], msg=None)
示例2: test_friendship_manager_make_friends_are_already_friends
def test_friendship_manager_make_friends_are_already_friends(self):
user1 = User(
username='john1',
password=generate_password_hash('a'),
email='[email protected]'
)
user2 = User(
username='john2',
password=generate_password_hash('a'),
email='[email protected]'
)
db.session.add(user1)
db.session.add(user2)
db.session.commit()
Friend.objects.make_friends(user1.id, user2.id)
are_friends = Friend.objects.are_friends(user1.id, user2.id)
self.assertTrue(are_friends)
try:
Friend.objects.make_friends(user1.id, user2.id)
self.assertTrue(False, "They are already friends, so...")
except AlreadyFriendsError:
self.assertTrue(True)
are_friends = Friend.objects.are_friends(user1.id, user2.id)
self.assertTrue(are_friends)
friends = Friend.objects.friends(user1.id)
self.assertIsNotNone(friends, msg=None)
self.assertEqual(len(friends), 1, msg=None)
示例3: signUp
def signUp():
try:
_name = request.form['inputName']
_email = request.form['inputEmail']
_password = request.form['inputPassword']
# validate the received values
if _name and _email and _password:
# All Good, let's call MySQL
conn = mysql.connect()
cursor = conn.cursor()
print '---' + generate_password_hash(_password)
_hashed_password = generate_password_hash(_password)
cursor.callproc('sp_createUser',(_name,_email,_hashed_password))
data = cursor.fetchall()
if len(data) is 0:
conn.commit()
return json.dumps({'message':'User created successfully !'})
else:
return json.dumps({'error':str(data[0])})
else:
return json.dumps({'html':'<span>Enter the required fields</span>'})
except Exception as e:
return json.dumps({'error':str(e)})
finally:
cursor.close()
conn.close()
示例4: populate
def populate():
print
print ("Run only once or you will get error for duplicates")
print
# init_db()
conn = sqlite3.connect('DB/twittr.db')
c = conn.cursor()
users = [('[email protected]', generate_password_hash('abc123'),'George','Constanza', '', 1),
('[email protected]',generate_password_hash('mary123'), 'Mary', 'Lamb', '', 1),
('[email protected]',generate_password_hash('peter123'),'Peter','Piper', '', 1),
]
c.executemany('INSERT INTO users VALUES (?,?,?,?,?,?)', users)
tweets = [(0, '[email protected]',"tweet0",str(current_time),"NULL"),
(1, '[email protected]',"tweet1",str(current_time),"NULL"),
(2, '[email protected]',"tweet2",str(current_time),"NULL"),
(3, '[email protected]',"tweet3",str(current_time), "NULL"),]
c.executemany('INSERT INTO tweets VALUES (?,?,?,?,?)', tweets)
subs = [
('[email protected]', '[email protected]'),
('[email protected]', '[email protected]'),
('[email protected]', '[email protected]'), ]
c.executemany('INSERT INTO subscriptions VALUES (?,?)', subs)
# commit or there are no changes
conn.commit()
print ('Done.')
示例5: test_users_account_route_account
def test_users_account_route_account(self):
"""Ensure users account actually create the user"""
# add user to database
user = User(username='john', password=generate_password_hash('a'), email='[email protected]')
db.session.add(user)
db.session.commit()
self.login(email='[email protected]', password='a')
response = self.app.post('/users/account/', data=dict(
username='tomeker',
email='[email protected]',
password='aaaaaa',
confirm='aaaaaa',
old_password='a'
), follow_redirects=True)
self.assertTrue(response.status_code == 200)
self.assertTemplateUsed('users/account.html')
self.assertIn(b'The changes have been saved', response.data)
updated_user = User.query.filter_by(username='tomeker').first()
self.assertTrue(updated_user is not None)
self.assertTrue(updated_user.email == '[email protected]')
self.assertTrue(check_password_hash(updated_user.password, 'aaaaaa'))
old_user = User.query.filter_by(username='john').first()
self.assertTrue(old_user is None)
# SECOND USER - ONLY USERNAME
self.logout()
# add user to database
second_user = User(username='john', password=generate_password_hash('a'), email='[email protected]')
db.session.add(second_user)
db.session.commit()
self.login(email='[email protected]', password='a')
response = self.app.post('/users/account/', data=dict(
username='tomekerer',
email='[email protected]',
password='',
confirm='',
old_password=''
), follow_redirects=True)
self.assertTrue(response.status_code == 200)
self.assertTemplateUsed('users/account.html')
self.assertIn(b'The changes have been saved', response.data)
updated_user = User.query.filter_by(username='tomekerer').first()
self.assertTrue(updated_user is not None)
self.assertTrue(updated_user.email == '[email protected]')
self.assertTrue(check_password_hash(updated_user.password, 'a'))
示例6: __init__
def __init__(self, name, email, password=None):
self.name = name
if password:
self.pwdhash = generate_password_hash(password)
else:
print "CHECK FOR EMAIL!!!!"
random_password = self.GenPasswd2()
print "Made account for %s with PW=%s. Impliment emailing this!!!! See http://packages.python.org/flask-mail/" % (self.name, random_password)
self.pwdhash = generate_password_hash(random_password)
self.email = email
self.activate = False
self.created = datetime.utcnow()
示例7: modify_password
def modify_password(userId):
user = g.user
form = ModifyPasswordForm()
if request.method == "POST" and form.validate():
old_hashed_password = generate_password_hash(form.old_password.data)
new_hashed_password = generate_password_hash(form.new_password.data)
if check_password_hash(user.password, form.old_password.data):
user = User.query.get(userId)
user.password = new_hashed_password
psc_db.session.commit()
flash("Password has beeen changed")
return redirect(url_for("users.profile", userId=userId))
return render_template("users/modify_password.html", form=form, user=user)
示例8: test_add_user_to_database
def test_add_user_to_database(self):
user = User(username='john', password=generate_password_hash('a'), email='[email protected]')
db.session.add(user)
db.session.commit()
user = User.query.filter_by(username='john').first()
assert user.id == 1
assert user.username == 'john'
assert check_password_hash(user.password, 'a')
assert user.email == '[email protected]'
self.assertIn("facebook$" + user.username, user.social_id)
assert user.registered_on is not None
assert user.confirmed is False
assert user.confirmed_on is None
self.assertTrue(user.first_login is None)
self.assertTrue(user.last_login is None)
self.assertFalse(user.is_active_login())
user.update_login_info()
login_date = datetime.now()
self.assertTrue(user.first_login is not None)
self.assertLess(user.first_login, login_date)
self.assertTrue(user.last_login is not None)
self.assertLess(user.last_login, login_date)
self.assertTrue(user.is_active_login())
user.last_login = datetime.now() + timedelta(days=-10)
db.session.add(user)
db.session.commit()
self.assertFalse(user.is_active_login())
# login again
user.update_login_info()
self.assertTrue(user.first_login is not None)
self.assertLess(user.first_login, login_date)
self.assertTrue(user.last_login is not None)
self.assertGreater(user.last_login, login_date)
user_second = User(username='johner', password=generate_password_hash('a'), email='[email protected]')
db.session.add(user_second)
db.session.commit()
user_second = User.query.filter_by(username='johner').first()
assert user_second.id == 2
self.assertEqual(user_second.id, 2)
self.assertNotEqual(user_second.username, 'john', msg=None)
self.assertEqual(user_second.username, 'johner')
示例9: test_user_social_id
def test_user_social_id(self):
user = User(
username='john',
password=generate_password_hash('a'),
email='[email protected]'
)
self.assertIn('facebook$john', user.social_id)
user = User(
username='john',
password=generate_password_hash('a'),
email='[email protected]',
social_id='facebok$sadfaksdfjasd'
)
self.assertEqual(user.social_id, 'facebok$sadfaksdfjasd')
示例10: register
def register():
# 3개의 값 입력받아 db에 넣기
# init_db()
print("**** 회원 가입 ****\n")
print("user id:", end="")
userid = input()
db = get_db()
# db.isolation_level = None
cur = db.cursor()
cur.execute("select * from user")
if cur.fetchone() != None:
print("아이디가 존재합니다")
return
else:
# 필드명 지정해주면 table원소개수만큼 꽉안차게 해도 됨
print("user name:", end="")
username = input()
print("user password:", end="")
userpasswd = input()
sql = "insert into user(userid, username,userpw) values(?,?,?)"
# cur.execute(sql,[userid,username,userpasswd])
cur.execute(sql, [userid, username, userpasswd], generate_password_hash(userpasswd))
cur.execute("select * from user")
print(cur.fetchall())
db.commit()
# print(cur.fetchall())
db.close()
示例11: _create_account_record
def _create_account_record(user):
account = Account.query.filter_by(dolly_user=user).first()
if account:
return account, False
dollyuser = dolly.DollyUser(user, _dolly_token(user))
userdata = dollyuser.get_userdata()
accountname = userdata['display_name']
username = userdata['email'] or userdata['username']
postfix = 0
while True:
if AccountUser.query.filter_by(username=username).count() == 0:
break
postfix += 1
username = userdata['email'].replace('@', '+%[email protected]' % postfix)
password = _gen_password()
accountuser = AccountUser(
username=username,
password_hash=generate_password_hash(password),
)
account = Account(
dolly_user=user,
dolly_token=dollyuser.token,
name=accountname,
users=[accountuser],
)
db.session.add(account)
current_app.logger.info('Created new user: %s/%s', username, password)
return account, True
示例12: user_create
def user_create(username, password):
user = User(username, generate_password_hash(password))
db.session.add(user)
db.session.commit() # only after commiting do you have user.user_id
first_tag = Tag('cats', user.user_id)
db.session.add(first_tag)
db.session.commit()
示例13: adduser
def adduser(args):
if len(args) == 2:
name, password = args
email = None
uploader = None
elif len(args) == 3:
name, password, email = args
uploader = None
elif len(args) == 4:
name, password, email, uploader = args
else:
sys.exit('''adduser requires 2 to 4 arguments:
adduser NAME PASSWORD [EMAIL [UPLOADER]]''')
kwargs = {'name': name,
'password': generate_password_hash(password),
'email' : email or '',
'uploader': bool(uploader)}
print('Adding user \'{0}\''.format(name))
for k, v in sorted(kwargs.items()):
if k == 'name':
continue
print('{0:<9} {1}'.format(k + ':', v))
correct = input('Data correct? [yes/NO] ')
if correct.lower() == 'yes':
User.create(**kwargs)
print('Added', name)
else:
print('Aborting.')
示例14: register
def register():
""" Registers the user. """
if g.user:
return redirect(url_for('home'))
if request.method == 'POST':
if not request.form['username']:
flash("You have to enter a username.")
elif not request.form['email'] or '@' not in request.form['email']:
flash("You have to enter a valid email.")
elif not request.form['password']:
flash("You have to enter a password.")
elif request.form['password'] != request.form['password2']:
flash("The two passwords do not match.")
elif database.get_user_id(email=request.form['email']) is not None:
flash("User with this email already exists.")
elif database.get_user_id(username=request.form['username']) is not None:
flash("User with this username already exists.")
else:
g.db.execute('''insert into pending_users (
username, email, pw_hash) values (?, ?, ?)''',
[request.form['username'], request.form['email'],
generate_password_hash(request.form['password'])])
g.db.commit()
flash("Successfully requested an account");
return redirect(url_for('login'))
return render_template('register.html')
示例15: register
def register():
"""Registers the user."""
if g.user:
return redirect(url_for('timeline'))
error = None
if request.method == 'POST':
if not request.form['username']:
error = 'You have to enter a username'
elif not request.form['email'] or \
'@' not in request.form['email']:
error = 'You have to enter a valid email address'
elif not request.form['password']:
error = 'You have to enter a password'
elif request.form['password'] != request.form['password2']:
error = 'The two passwords do not match'
elif user_model.get_id(request.form['username']) is not None:
error = 'The username is already taken'
else:
data = dict([[k, v] for k, v in request.form.items()])
data['pw_hash'] = generate_password_hash(data['password'])
del data['password']
del data['password2']
user_model.add(data['username'], data['pw_hash'], data['email'])
flash('You were successfully registered and can login now')
return redirect(url_for('login'))
return render_template('rbac/register.html', error=error)