rails 3中是否有`url_for`的新语法?

时间:2010-09-07 14:15:37

标签: ruby-on-rails-3

在插件助手中,我有:

include Rails.application.routes.url_helpers
url_for(:only_path => true, :controller => 'people', :action => 'new')

请注意,使用新的include语法,该部分可以正常工作。但是我收到了一个错误:

undefined local variable or method `controller' for #<ActionView::Helpers::InstanceTag:0x311ddf4>

有没有新的方法来指定这个,比如'controller#action'?什么是关键?

1 个答案:

答案 0 :(得分:7)

url_for应该照常工作,请参阅http://api.rubyonrails.org/classes/ActionView/Helpers/UrlHelper.html#method-i-url_for

我在我的控制台上查了一下:

ruby-1.9.2-head > include Rails.application.routes.url_helpers
 => Object 

ruby-1.9.2-head > url_for(:only_path => true, :controller => 'admin/providers', :action 
=> 'new')

=> "/admin/providers/new" 

也许url_for中没有出现错误,因为您的错误消息显示ActionView :: Helpers :: InstanceTag这听起来像是在使用某种类型的标签,例如link_to等等。您有没有想过这个?

祝你好运

西蒙