Я пытался задокументировать эту функцию и задавался вопросом, какие вещи я должен включить в строку документации. Я использую Sphinx в качестве генератора документации.
@app.route('/login', methods=['GET','POST'])
def login():
"""
This is the Login route endpoint.
Parameters:
GET:/login
POST:/login
Returns:
It renders the home.html template
"""
form = LoginForm()
if form.validate_on_submit():
user = User.query.filter_by(username=form.username.data).first()
if user:
if check_password_hash(user.password_hash, form.password.data):
login_user(user, remember=form.remember.data)
return redirect('/dashboard')
return '<h1> Invalid Username or Password!. Please try again.</h1>'
return render_template('login.html', form = form)