Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 添加用户id为的视图_Ruby On Rails_Ruby - Fatal编程技术网

Ruby on rails 添加用户id为的视图

Ruby on rails 添加用户id为的视图,ruby-on-rails,ruby,Ruby On Rails,Ruby,我正在尝试向Users/views添加一个视图,该视图将包含Users-id。我希望添加的视图是“test”,我希望每个用户都有自己的测试页面。例如,用户编辑的路径如下所示:。创建测试页没有问题,但无法使其与用户id关联。我希望用户测试路径如下:。不确定如何设置此选项。如果要调用路由,应在资源用户上创建成员 因此,在您的路线中,您必须添加以下内容: resources :users do get :test, on: :member end (有关参考信息,请参见导轨:) 注意:使用on

我正在尝试向Users/views添加一个视图,该视图将包含Users-id。我希望添加的视图是“test”,我希望每个用户都有自己的测试页面。例如,用户编辑的路径如下所示:。创建测试页没有问题,但无法使其与用户id关联。我希望用户测试路径如下:。不确定如何设置此选项。

如果要调用路由,应在资源用户上创建成员

因此,在您的路线中,您必须添加以下内容:

resources :users do 
  get :test, on: :member
end
(有关参考信息,请参见导轨:)

注意:使用on::member选项。您可以在参数[:id]中获取资源id。如果您不这样指定它,您将在params[:user_id]中找到它

完成此操作后,应将操作添加到控制器并创建相应的视图

class UsersController < ApplicationController
  def test
    # create a corresponding view app/views/users/test.html.erb
  end
end
class UsersController
就是这样!非常感谢。您应该注意,
params[:id]
在这个
测试中变成
params[:user\u id]
action@RichPeck你能详细说明一下吗?根据轨道指南章节“2.10.1添加构件路线”。资源id在params[:id]中传递。我猜你认为没有“on::member”选项的路线。这将使资源id在参数[:user_id]中可用。然而,上面的例子并非如此。哦,我想你是对的。谢谢你为我澄清这一点:)不过你指出这一点很好。这是一件可以忽略的微妙的事情。我将更新答案,并就此留下一条注释。:)