我需要一个很好的方法来在一个数组中创建一组Rails 3路径,在link_to帮助器中。

我有:

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)

您的建议非常感谢。

===============>>#1 票数:9 已采纳

怎么样

TITLES.each do |t|
  = link_to t, eval("#{t}_super_users_path(user)")

===============>>#2 票数:4

相反,eval使用public_send

TITLES.each do |t|
  = link_to t, public_send("#{t}_super_users_path", user)

  ask by Leo Burt translate from so

未解决问题?本站智能推荐:

2回复

如何在rails 3.2的link_to中调用存储在字符串变量中而没有eval的路径?

引用的索引路径存储在var JobshopRfqx.quote_index_pat h中并从中检索。 以下是变量的定义方式: 这是link_to工作(eval): 这是link_to不起作用: 这是错误: 没有eval,调用字符串路径的正确方法是什么?
1回复

如何在Rails视图上的ruby中将静态字符串作为参数传递给link_to

我有一个修改过的字符串。 这是我进行更改的代码: 它可以正常工作,并且采用正确的格式将其放入link_to帮助器中。 这就是我首先编写link_to帮助程序的方式,并且有效。 我试图这样更改它: 或#{arguments} 但这是行不通的。 我什至没有使用
1回复

在路径的link_to中执行条件的好方法是什么?

好的,我有这个link_to 但我想在路上做一个条件 你能在link_to中做一个三元运算符吗?
1回复

如何生成一个传递一些自定义参数的`link_to`网址?

我正在使用Ruby on Rails 3.0.9,我想生成一个link_to URL传递一些自定义参数。 也就是说,有一个articles_path (www.my_web_site_name.com/articles)我想生成如下内容: 我怎样才能将link_to语句编写为“alàR
1回复

通过link_to将参数传递给“新”操作

Rails新手在这里,我很困惑。 在Rails中,我有一个has_many Tasks的项目模型。 假设我有一个显示5个项目的视图,并且每个项目都有一个“新任务”链接,以便用户可以将新任务添加到任何一个项目中。 所以: 项目1 新任务 项目二 新任务等 如果“新任
2回复

我如何将参数添加到给定的URL中在Rails中是动态的

我的页面有网址 当用户在此页面上搜索时,它变为 其中first_name和last_name是用户搜索时的搜索参数。 我想要一个在for ex. url中添加参数view_type = something的链接for ex. 对于第一个网址 对于第二个URL
1回复

'ActionView :: Template :: Error - 没有路由匹配'传递'link_to'语句的“旧样式”参数

我正在使用Ruby on Rails 3.0.9,我遇到了这个问题: 为'link_to'语句设置':controller'参数时出现问题 。 没有人用解决方案回答,但是,尝试并重新尝试找到并解决问题,我发现在传递“旧样式”参数(即使用controller和action选项而不是命名路径路径)
2回复

如何在Rails link_to中生成自定义排序查询字符串URL?

当我在Rails 3.0.7应用程序中使用具有许多参数的link_to帮助程序时,它会生成按字典顺序排序的url,这可能在Activesupport文档中的Hash的to_param方法中提到过。 例如 产生 但是我想要的是 是否有人能够按照params哈希提供给lin
1回复

Rails路径变量

如果我的Rails route.rb文件中包含以下路由: 我可以在视图中使用的路径变量是什么? 我假设类似time_track_check_in_path或check_in_time_track_path 。 但是,这些都不起作用:
3回复

通过link_to传递其他参数

我有一个新闻页面,其中包含一些带有分页的新闻。 我想允许用户查看新用户的详细信息,并且当他单击“后退”按钮时,视图将转到用户先前所在的页面。 我的想法是在link_to中添加一个参数,使用户进入显示页面,但这似乎不起作用: 我希望呈现的网址是这样的: news/2?back_page