本文整理汇总了Python中flask_login.current_user.can方法的典型用法代码示例。如果您正苦于以下问题:Python current_user.can方法的具体用法?Python current_user.can怎么用?Python current_user.can使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类flask_login.current_user
的用法示例。
在下文中一共展示了current_user.can方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: index
# 需要导入模块: from flask_login import current_user [as 别名]
# 或者: from flask_login.current_user import can [as 别名]
def index():
form = PostForm()
if current_user.can(Permission.WRITE_ARTICLES) and \
form.validate_on_submit():
post = Post(body=form.body.data,
author=current_user._get_current_object())
db.session.add(post)
return redirect(url_for('.index'))
page = request.args.get('page', 1, type=int)
show_followed = False
if current_user.is_authenticated:
show_followed = bool(request.cookies.get('show_followed', ''))
if show_followed:
query = current_user.followed_posts
else:
query = Post.query
pagination = query.order_by(Post.timestamp.desc()).paginate(
page, per_page=current_app.config['CIRCULATE_POSTS_PER_PAGE'],
error_out=False)
posts = pagination.items
return render_template('index.html', form=form, posts=posts,
show_followed=show_followed, pagination=pagination)
示例2: index
# 需要导入模块: from flask_login import current_user [as 别名]
# 或者: from flask_login.current_user import can [as 别名]
def index():
form = PostForm()
if current_user.can(Permission.WRITE_ARTICLES) and \
form.validate_on_submit():
post = Post(body=form.body.data,
author=current_user._get_current_object())
db.session.add(post)
return redirect(url_for('.index'))
page = request.args.get('page', 1, type=int)
show_followed = False
if current_user.is_authenticated:
show_followed = bool(request.cookies.get('show_followed', ''))
if show_followed:
query = current_user.followed_posts
else:
query = Post.query
pagination = query.order_by(Post.timestamp.desc()).paginate(
page, per_page=current_app.config['FLASKY_POSTS_PER_PAGE'],
error_out=False)
posts = pagination.items
return render_template('index.html', form=form, posts=posts,
show_followed=show_followed, pagination=pagination)
示例3: permission_required
# 需要导入模块: from flask_login import current_user [as 别名]
# 或者: from flask_login.current_user import can [as 别名]
def permission_required(permission):
def decorator(f):
@wraps(f)
def decorated_function(*args, **kwargs):
if not current_user.can(permission):
abort(403)
return f(*args, **kwargs)
return decorated_function
return decorator
示例4: edit
# 需要导入模块: from flask_login import current_user [as 别名]
# 或者: from flask_login.current_user import can [as 别名]
def edit(id):
post = Post.query.get_or_404(id)
if current_user != post.author and \
not current_user.can(Permission.ADMINISTER):
abort(403)
form = PostForm()
if form.validate_on_submit():
post.body = form.body.data
db.session.add(post)
flash('The post has been updated.')
return redirect(url_for('.post', id=post.id))
form.body.data = post.body
return render_template('edit_post.html', form=form)
示例5: app_permission
# 需要导入模块: from flask_login import current_user [as 别名]
# 或者: from flask_login.current_user import can [as 别名]
def app_permission():
def can_admin(permission):
return current_user.can(permission)
return dict(can_admin=can_admin, permission=Permission)
示例6: can
# 需要导入模块: from flask_login import current_user [as 别名]
# 或者: from flask_login.current_user import can [as 别名]
def can(self, permissions):
if self.roles is None:
return False
all_perms = reduce(or_, map(lambda x: x.permissions, self.roles))
return all_perms & permissions == permissions
示例7: can_admin
# 需要导入模块: from flask_login import current_user [as 别名]
# 或者: from flask_login.current_user import can [as 别名]
def can_admin(self):
return self.can(Permission.ADMINISTER)
示例8: permission_required
# 需要导入模块: from flask_login import current_user [as 别名]
# 或者: from flask_login.current_user import can [as 别名]
def permission_required(permission):
def decorator(f):
@wraps(f)
def _deco(*args, **kwargs):
if not current_user.can(permission):
abort(403)
return f(*args, **kwargs)
return _deco
return decorator
示例9: admin
# 需要导入模块: from flask_login import current_user [as 别名]
# 或者: from flask_login.current_user import can [as 别名]
def admin():
return 'Only administrators can see this!'
示例10: permission_required
# 需要导入模块: from flask_login import current_user [as 别名]
# 或者: from flask_login.current_user import can [as 别名]
def permission_required(permission):
def decorator(f):
@wraps(f)
def _deco(*args, **kwargs):
if current_user.is_authenticated and current_user.can(permission):
return f(*args, **kwargs)
abort(403)
return _deco
return decorator
示例11: permission_required
# 需要导入模块: from flask_login import current_user [as 别名]
# 或者: from flask_login.current_user import can [as 别名]
def permission_required(permission):
"""Restrict a view to users with the given permission."""
def decorator(f):
@wraps(f)
def decorated_function(*args, **kwargs):
if not current_user.can(permission):
abort(403)
return f(*args, **kwargs)
return decorated_function
return decorator
示例12: permission_required
# 需要导入模块: from flask_login import current_user [as 别名]
# 或者: from flask_login.current_user import can [as 别名]
def permission_required(permission):
def decorator(f):
@wraps(f)
def decorated_function(*args, **kwargs):
if not current_user.can(permission):
abort(403)
return f(*args, **kwargs)
return decorated_function
return decorator