Flask-Admin을 처음 사용하고 앱에 구현할 수있었습니다. 모든 것이 잘 작동합니다. 관리보기가 설정되고 데이터를 표시하고 만들고 삭제할 수 있습니다.맞춤 보안 기능이있는 Flask-Admin
보안 옵션을 찾을 때 내 자신을 굴릴 수 있음을 알았습니다. 하지만 그것은 클래스 기반의보기 예제를 보여 주며 (광산은 함수 기반 임) Flask-Login
을 사용해야합니다. 나는 그것을 사용하고 싶지 않다. 이미 다음과 같은 필요한 경로에 대한 권한 확인이 있습니다.
def login_required(something):
@wraps(something)
def wrap(*args, **kwargs):
if 'logged_in' in session:
return test(*args, **kwargs)
else:
return redirect(url_for('main.login'))
return wrap
@main_blueprint.route('/')
@login_required
def index():
form = MessageForm(request.form)
return render_template('index.html', form=form)
@main_blueprint.route('/login', methods=['GET', 'POST'])
def login():
error = None
form = LoginForm(request.form)
if request.method == 'POST':
if form.validate_on_submit():
user = User.query.filter_by(name=request.form['name']).first()
if user is not None and bcrypt.check_password_hash(user.password, request.form['password']):
session['logged_in'] = True
session['user_id'] = user.id
session['role'] = user.role
session['user'] = user.name
flash('Welcome')
return redirect(url_for('main.index'))
else:
error = 'Invalid Username or Password.'
flash('Invalid Username/Password Combination')
return render_template('login.html', form=form, error=error)
나는
@main_blueprint.route('/admin')
@login_required
def admin():
return render_template('admin/master.html')
하지만 분명이 작동하지 않습니다 다음을 수행 할 시도했습니다.
Flask-Login
또는 Flask-Security
또는 다른 추가 모듈을 사용하지 않고 Flask-Admin
경로에 자체 보안을 구현하는 방법은 무엇입니까 ??