def unblock_user(self, user: User):
self.blocked.pop(user.alias, None)
python类User()的实例源码
def set_rating(self, user_or_ip, rating):
'''Record a user's rating of this package.
The caller function is responsible for doing the commit.
If a rating is outside the range MAX_RATING - MIN_RATING then a
RatingValueException is raised.
@param user_or_ip - user object or an IP address string
'''
user = None
from user import User
from rating import Rating, MAX_RATING, MIN_RATING
if isinstance(user_or_ip, User):
user = user_or_ip
rating_query = meta.Session.query(Rating)\
.filter_by(package=self, user=user)
else:
ip = user_or_ip
rating_query = meta.Session.query(Rating)\
.filter_by(package=self, user_ip_address=ip)
try:
rating = float(rating)
except TypeError:
raise RatingValueException
except ValueError:
raise RatingValueException
if rating > MAX_RATING or rating < MIN_RATING:
raise RatingValueException
if rating_query.count():
rating_obj = rating_query.first()
rating_obj.rating = rating
elif user:
rating = Rating(package=self,
user=user,
rating=rating)
meta.Session.add(rating)
else:
rating = Rating(package=self,
user_ip_address=ip,
rating=rating)
meta.Session.add(rating)
def manage_users_edit(name=None):
if request.method == 'GET':
error = None
u = User()
u.name = name
u = get_user(u)
if u is None:
error = "User existiert nicht"
return render_template('manage_users_edit.html', user_to_edit=u, error=error, user=get_user_by_name(session.get('name')))
if request.method == 'POST':
u = User()
#print request.form
u.id = request.form['id']
u.name = request.form['username'].lower()
u.longname=request.form['longname']
u.email = request.form['email']
u.rfid_id = request.form['rfid_id']
if len(request.form['new_password']) > 0:
u.password = bcrypt.hashpw(request.form['new_password'], bcrypt.gensalt())
else:
u2 = get_user_by_id(u.id)
u.password = u2.password
if 'isblack' in request.form:
u.isblack = True
else:
u.isblack = False
if 'isbaron' in request.form:
u.isbaron = True
else:
u.isbaron = False
if 'isshown' in request.form:
u.isshown = True
else:
u.isshown = False
if 'autoblack' in request.form:
u.autoblack = True
else:
u.autoblack = False
if 'onlyrfid' in request.form:
u.onlyrfid = True
else:
u.onlyrfid = False
update_user(u)
return redirect('/manage_users')