[英]Redirecting to show User Profile rather than default home page when clicking to go “home”
这个问题来自用Michael Hartl的Rails教程创建的示例Web应用程序,尽管它不是作者建议的练习之一。
在许多社交网站上,当单击以转到“主页”时(例如在网站徽标上),用户将被重定向到其个人资料,而不是默认主页。 我想知道如何在教程应用程序中也能做到这一点。
在教程应用程序中,“主页”视图被视为“静态”视图,并由static_page_controller
呈现,仅显示:
def home
end
当我尝试向其中添加以下内容时:
def home
if signed_in?
redirect_to @user
end
end
我收到错误“无法重定向到nil”。 我以为@user
在所有控制器之间共享(因为signed_in
是...在user_controller
: @user = User.find(params[:id])
)。 我将如何修改控制器,以使其在检测到用户登录时显示个人资料而不是首页?
谢谢你的帮助!
此signed_in?
方法不要使用current_user
而不是@user
?
如果是这样,您可以更改线路
redirect_to @user
至
redirect_to current_user
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.