为什么url_for不像我认为的那样呈现这个?

时间:2010-10-11 20:50:40

标签: ruby-on-rails routing url-for

我在控制器中有这个:

@statics = [{'home' => 'about'},
            {'home' => 'termsandconditions'},
            {'home' => 'information'},
            {'news' => 'archives'}]

在我看来:

@statics.each do |controller, action|
  xml.loc url_for(:only_path => false, :controller => controller, :action => action)
  xml.lastmod     w3c_date(Time.now)
  xml.changefreq  "weekly"
  xml.priority    0.8
end

网址不是我所期望的,例如。

http://localhost:3000/homeinformation

而不是

http://localhost:3000/information

但是,我只是手动执行此操作,我得到了正确的网址:

url_for(:only_path => false, :controller => 'brownies', :action => 'index') #works!

我在这里缺少什么?

1 个答案:

答案 0 :(得分:0)

@statics是一个包含一个哈希条目的数组,因此您需要使用each块只获取一个参数并将其拆分为块。