Python 3.x 如何实现request.args.get(';next';)

Python 3.x 如何实现request.args.get(';next';),python-3.x,http,flask,flask-wtforms,Python 3.x,Http,Flask,Flask Wtforms,我正在尝试实现我在社交媒体平台上看到的一个功能,在这种情况下,如果一个未登录的用户想要发布或留下评论,就会出现一个登录弹出窗口(在我的情况下是一个模式),他们需要登录,(如果他们没有帐户,模式也会提示他们注册),然后他们被重定向到那个帖子,现在可以发表评论了 这是我的主页路线视图功能 @app.route("/",methods=['GET','POST']) @app.route("/home",methods=['GET','POST']) def home(): posts = P

我正在尝试实现我在社交媒体平台上看到的一个功能,在这种情况下,如果一个未登录的用户想要发布或留下评论,就会出现一个登录弹出窗口(在我的情况下是一个模式),他们需要登录,(如果他们没有帐户,模式也会提示他们注册),然后他们被重定向到那个帖子,现在可以发表评论了

这是我的主页路线视图功能

@app.route("/",methods=['GET','POST'])
@app.route("/home",methods=['GET','POST'])
def home():
    posts = Pitch.query.all()
    comments = Comment.query.all()


    registerForm = Register()
    if registerForm.validate_on_submit():
        hashed_password = bcrypt.generate_password_hash(registerForm.password.data).decode('utf-8')
        user = User(username = registerForm.username.data, email = registerForm.email.data, password = hashed_password)
        db.session.add(user)
        db.session.commit()
        flash(f'Your account has been created! You are now able to login!','success')
        mail_message("Welcome to watchlist","templates/email/welcome_user",user.email,user=user)
        return redirect(url_for('home'))


    form = Login()
    if form.validate_on_submit():
        user = User.query.filter_by(email=form.email.data).first()
        if user and bcrypt.check_password_hash(user.password,form.password.data):
            login_user(user, remember=form.remember.data)
            next_page = request.args.get('next')
            return redirect(next_page) if next_page else redirect(url_for('circles'))

        else:
            flash('Login Unsuccessful. Please check email and password','danger')

    return render_template('home.html', title='login',form=form, registerForm=registerForm ,posts=posts, comments=comments)
下面是我个人的post-view函数

@app.route("/post/<int:post_id>",methods=['GET','POST'])
def post(post_id):
    review= CommentForm()
    comments = Comment.query.all()
    post = Pitch.query.get_or_404(post_id)
    if review.validate_on_submit():
        comment = Comment(body= review.comment.data,post_id=post.id )
        db.session.add(comment)
        db.session.commit()
        flash('Your post has been created!','success')
        return redirect(url_for('post',post_id=post.id))
    return render_template('post.html',title = post.title, post=post,review=review, comments = comments )
@app.route(“/post/”,方法=['GET','post'])
def post(post_id):
review=CommentForm()
comments=Comment.query.all()
post=Pitch.query.get_或_404(post_id)
如果审查。在提交()时验证:
comment=comment(body=review.comment.data,post\u id=post.id)
db.session.add(注释)
db.session.commit()
flash(“您的帖子已经创建!”,“成功”)
返回重定向(url_for('post',post_id=post.id))
返回呈现模板('post.html',title=post.title,post=post,review=review,comments=comments)
以下是我的主页模板片段:

{%for posts in posts%}
{{post.date_post.strftime(“%Y-%m-%d”)}

{{post.content}}


{%如果当前用户是经过身份验证的%} {%else%} {%endif%} {%endfor%}