Rails link_to带有动态变量的路径(从数据库中读取)

时间:2013-08-30 20:48:47

标签: ruby-on-rails ruby ruby-on-rails-3

我目前正在开发一个带有大量引擎的Rails应用程序。

我有一些存储在数据库中的Engines root-path的路径。

但是,如果我尝试使用数据库中的值(它存储在'root_path'-Field中)和视图中的link_to帮助程序链接到它们,我没有得到正确的链接。

以下是一个示例(假设数据库中的root_path当前为foo_engine.bar_path

- @engines.each do |engine|
  = link_to engine.name, engine.root_path

而不是:

http://localhost:3000/foo_engine.bar_path

我得到了

http://localhost:3000/current_engine/foo_engine.bar_path

提前谢谢

菲利普

1 个答案:

答案 0 :(得分:1)

确定, 我找到了解决方案。

只需使用

- @engines.each do |engine|
  = link_to engine.name, eval(engine.root_path)

但是eval是邪恶的。还有另一种方式吗?