繁体   English   中英

单击以转到“主页”时重定向以显示用户配置文件而不是默认主页

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM