如何链接到控制器方法

时间:2014-06-18 11:13:45

标签: ruby-on-rails ruby-on-rails-4

我正在关注如何克隆记录的this answer

我不能训练如何表达链接并将其路由。

这是在我的@miniature show视图中所以我认为它应该像

<%= link_to 'clone', :controller => :miniatures_controller, :action => :clone %>

和路线

  match 'clone', to: 'miniatures#clone', via: 'get'

但这显然是错误的。我使用@miniature代替上面的答案@prescription。

1 个答案:

答案 0 :(得分:2)

如果您只使用clone_path

,该怎么办?
<%= link_to 'clone', clone_path %>

原因rake routes仅显示clone路线。它使用相同的路线。

如果您对路线不满意并且您应该传递参数(例如miniature_id),请将成员添加到您的资源(可能是嵌套的),例如:

resources :miniatures do
  member do
    get 'clone'
  end
end

这将是clone_miniature_path,您应该通过@miniature

<%= link_to 'clone', clone_miniature_path(@miniature) %>