我知道有人问过这个问题,但没有解决方案有效。
我正在尝试将组 ID 传递给过程 Controller ,以便我可以使该过程属于该组。
小组展示 View :
<%= link_to 'Create a Procedure', new_procedure_path(:group => @group.id), class: 'btn btn-default btn-small' %>
程序 Controller :
def new
@procedure = Procedure.new
@group = Group.find(params[:group])
路线:
resources :groups, only: [:new, :create, :show, :destroy]
resources :procedures
最佳答案
如果需要 group_id,请将其作为 url 的一部分,并且在表单 View 中不需要它。您将在参数中包含 group_id:params[:group_id]
是 Controller 所期望的。
resources :groups, only: [:new, :create, :show, :destroy] do
resources :procedures
end
在您的 Controller 中,执行以下操作:
def new
@group = Group.find(params[:group_id])
@procedure = @group.procedures.new
end
你会像这样链接到新页面
<%= link_to 'Create a Procedure', new_group_procedure_path(@group), class: 'btn btn-default btn-small' %>
关于ruby-on-rails - 如何将一个对象的 id 传递给另一个对象的 Controller ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34644585/