动态索引路径助手

时间:2014-12-31 14:31:10

标签: ruby-on-rails ruby

我必须路径助手: automobile_albums_path community_albums_path 相册模型属于多态所有者,我想使用@album模型将链接放到当前相册的所有者的其他相册中。

所以我想写这样的东西:

link_to @album.owner.albums

但这不起作用。我想避免使用 case 语句来选择合适的帮助器。有一个普遍的吗?

1 个答案:

答案 0 :(得分:1)

# app/helpers/application_helper.rb
module ApplicationHelper
  def albums_path(owner) # change the name if it will collide with a route helper
    Rails.application.routes.url_helpers.send "#{owner.class.name.downcase}_albums_path" # add the owner as a second param to 'send' if needed
  end
end

编辑!