我有一个评论控制器。我允许访客(未经身份验证的用户)查看用于发布新评论的表单并允许他们提交。
现在,我想在我的用户提交表单后对其进行身份验证。到目前为止,我已经做到了。
class CommentsController
before_filter :authenticate_user!, only: [:create]
def create
@comment = Comment.new params[:comment]
@comment.save!
redirect_to @comment
end
end
所以现在,当用户提交评论时,他们会被带到登录页面,并且能够进行身份验证。然而,在他们这样做之后,用户被重定向回应用程序的根目录,并且评论永远不会被创建,只是丢失了。
现在,如果您authenticate_user!
在 GET 操作之前调用,则在用户进行身份验证后,他们似乎被重定向到其原始目的地。POST 请求似乎并非如此。
那么,如何create
在用户认证后立即处理该操作?