我正在尝试将params传递给我的rails路径助手,但我目前的尝试无效。这就是我现在正在做的事情:
<%= link_to "Pause Assignment", pause_account_complete_assignment_index_path(@assignment.current_timekeeper) %>
def pause
binding.pry
end
在控制器中,我正在寻找我传入的参数。但是找不到它们。这是返回的内容。
<ActionController::Parameters {"controller"=>"accounts/complete_assignment", "action"=>"pause"} permitted: false>
resources :complete_assignment, only: [:create, :destroy] do
get 'pause', on: :collection
end
这可能与我在收集时使用的事实有关吗?
但是,基本上我如何在控制器中传递@assigment.current_timkeeper
?
答案 0 :(得分:4)
您应该以哈希语法
传递额外的参数<%= link_to "Pause Assignment", pause_account_complete_assignment_index_path(current_timekeeper: @assignment.current_timekeeper) %>
这会给你像
这样的参数<ActionController::Parameters {
"controller"=>"accounts/complete_assignment",
"action"=>"pause",
"current_timekeeper"=>"value_of_current_timekeeper"
} permitted: false>