我需要一个很好的方法在link_to
帮助器中从数组创建一组Rails 3路径。
我有:
TITLES = ['foo', 'bar', 'baz']
TITLES.each do |t|
= link_to t, (.....path....)
这样我需要构建一组路径:
foo_super_users_path(user)
bar_super_users_path(user)
baz_super_users_path(user)
如您所见,我需要为每个路径添加相同的前缀 _super_users ,并传递用户对象。作为最终结果,我需要类似的东西:
link_to t, foo_super_users_path(user)
link_to t, bar_super_users_path(user)
link_to t, baz_super_users_path(user)
非常感谢你的建议。
答案 0 :(得分:9)
怎么样
TITLES.each do |t|
= link_to t, eval("#{t}_super_users_path(user)")
答案 1 :(得分:4)
相反,eval使用public_send
TITLES.each do |t|
= link_to t, public_send("#{t}_super_users_path", user)