Ruby on rails 3.2 RubyonRails:通过";将id从视图传递到控制器;链接到;

Ruby on rails 3.2 RubyonRails:通过";将id从视图传递到控制器;链接到;,ruby-on-rails-3.2,Ruby On Rails 3.2,在一个“索引”视图(没有表单)中,我有一个到行的链接,在这里我想把一个id传递给 多步骤表单的控制器: <%= link_to user.username, useredit_steps_path(:id => user.id) %> 但是,我总是将“0”作为值检索-这是错误的 我做错了什么 更准确地说: 对不起,这没用 这是我的routes.rb文件 FISneo::Application.routes.draw do资源:用户编辑步骤 resources :age_cl

在一个“索引”视图(没有表单)中,我有一个到行的链接,在这里我想把一个id传递给 多步骤表单的控制器:

<%= link_to user.username, useredit_steps_path(:id => user.id)  %>
但是,我总是将“0”作为值检索-这是错误的

我做错了什么

更准确地说:

对不起,这没用

这是我的routes.rb文件 FISneo::Application.routes.draw do资源:用户编辑步骤

resources :age_classes
resources :member_statuses
resources :flights
resources :aircrafts
resources :aircraft_classes
resources :takeoff_types


get "password_resets/new"
get "sessions/new"
get "users/new"

get "log_out" => "sessions#destroy", :as => "log_out"
get "log_in" => "sessions#new", :as => "log_in"
get "sign_up" => "users#new", :as => "sign_up"

resources :sessions
resources :password_resets

resources :users
resources :flight_types

root :to => "sessions#new"
end
URL为:“……3000/useredit_步骤。3”

这里“3”是一个用户的id

提前感谢,德克


<%= link_to user.username, useredit_step_path(user.id)  %>
useredit\u step\u path
是单数,而不是复数,如果您想显示特定的用户。



useredit\u step\u path
是单数,而不是复数,如果您想显示特定用户。

来自Wicked自述:

注意:Wicked使用:id参数控制步骤流

换句话说,您不能向routes helper方法传递任何会覆盖:id参数的内容,这就是您在上面所做的。尝试为键使用不同的符号,它需要位于作为第二个参数传递的哈希中(您需要将第一个向导步骤的id作为第一个参数传递,以便在第二个参数中提供选项哈希)。即


很抱歉,几个月前我没有看到并回答这个问题,只是在搜索类似的问题时发现了这个问题。我想这是值得发布给其他可能在这里登陆的人的。

来自邪恶自述:

注意:Wicked使用:id参数控制步骤流

换句话说,您不能向routes helper方法传递任何会覆盖:id参数的内容,这就是您在上面所做的。尝试为键使用不同的符号,它需要位于作为第二个参数传递的哈希中(您需要将第一个向导步骤的id作为第一个参数传递,以便在第二个参数中提供选项哈希)。即


很抱歉,几个月前我没有看到并回答这个问题,只是在搜索类似的问题时发现了这个问题。我想对于可能在这里登陆的其他人来说,这是值得发布的。

对不起,不起作用。请用更准确的信息浏览我上面的帖子。感谢您的帮助…您的URL很奇怪,应该是
useredit\u steps/3
。您是否可以尝试删除
参考资料:useredit_steps
并将`match useredit_steps/:id=>“usereditsteps#index”替换为不起作用。我没有“索引”方法。“邪恶”需要控制器中的“显示”方法。。。。。我现在甚至有了正确的URL,我可以看到SQL正在检索正确的id…是的,对不起,我是说
#show
当然。现在一切都好了吗?没有。这没用。。。如果我这样做,我会收到一条“缺少模板”的错误消息。问题是Wicked创建了不同的视图,这些视图以多步骤表单的各个步骤的名称命名。。。。但是,我可以看到,在您的提示下,正确的id将出现在控制器上,但是呈现的模板错误……对不起,不起作用。请用更准确的信息浏览我上面的帖子。感谢您的帮助…您的URL很奇怪,应该是
useredit\u steps/3
。您是否可以尝试删除
参考资料:useredit_steps
并将`match useredit_steps/:id=>“usereditsteps#index”替换为不起作用。我没有“索引”方法。“邪恶”需要控制器中的“显示”方法。。。。。我现在甚至有了正确的URL,我可以看到SQL正在检索正确的id…是的,对不起,我是说
#show
当然。现在一切都好了吗?没有。这没用。。。如果我这样做,我会收到一条“缺少模板”的错误消息。问题是Wicked创建了不同的视图,这些视图以多步骤表单的各个步骤的名称命名。。。。但是,我可以看到,在您的提示下,正确的id会出现在控制器中,但是呈现的模板错误。。。。
<%= link_to user.username, useredit_step_path(user.id)  %>
<%= link_to user.username, useredit_steps_path(:first_step, :user_id => user.id)  %>
@user = User.find_by_id(params[:user_id])