0

我是 Rails 的新手,正在尝试使用 Devise 开发我的第一个 Rails 3 应用程序。我有一种情况,我网站上的几乎所有内容都是特定于用户的。我正在创建一种不面向公众的私人画廊,以便每个图像都属于一个用户并且一个用户拥有多个图像。这是我的问题...我想修改我的路线,以便显示用户图像不需要 URL 中的用户 ID。我将在 user/show 路线中显示用户的图像。

当前路线(来自 rake:routes):

/users/show(.:format)   {:action=>"show", :controller=>"users"}

是否可以设计只使用“资源”而不是“资源”?所以它会是 /users/show/? 我说得有道理吗?我不确定要问的术语,但我希望用户的所有功能都暗示我知道用户是谁,然后我可以在控制器中检查。

谢谢!

4

1 回答 1

1

在您的控制器中,对于 show 操作:

def show
    @user = current_user
end

这就是你需要做的。如果您期望一个 id,那么您可以执行类似的操作@user = User.find(params[:id],但是由于您知道您想要什么用户(在这种情况下,current_user是由 Devise 公开的 ),您不需要做任何特别的事情。

于 2011-03-17T20:14:25.247 回答