【发布时间】:2012-08-14 18:00:24
【问题描述】:
我正在为最后几分钟的假期建立一个网站。
现在我正忙于建立对 seo 友好的 url。每最后一分钟都有一个国家和一个城市。我想让网址看起来像这样的方式如下:
对于每个国家/地区所有最后几分钟的页面:
“domain.com/last-minutes-spain”
对于包含每个城市所有最后几分钟的页面:
“domain.com/last-minutes-spain/barcelona”
包含每个国家/地区所有最后几分钟的页面的 url 工作正常,但每个城市的页面的 url 不正常。
我的路线(我正在使用friendly_id gem):
match '/last-minutes-:id' => 'countries#show', :as => 'show_country'
match "/last-minutes-:country_id/:id" => 'city#show', :as => 'show_city'
countries_controller.rb:
def show
@country = Country.find(params[:id])
end
国家/地区/show.html.erb:
<% @country.cities.each do |c| -%>
<%= link_to(c.title, show_city_path(c.slug)) %><br />
<% end -%>
c.slug 用于friendly_id gem
显示城市路径(每个城市的最后几分钟)显示以下内容:
“domain.com/last-minutes-barcelona/spain”
所以城市和国家都在错误的地方。有谁知道怎么弄好?
【问题讨论】:
-
您需要提供遇到问题的
link_to或url_for代码。 -
-
c是什么?c.slug是什么?如果您提供的信息非常有限,我们无法真正帮助您。 -
我已经更新了我的问题。我希望这是足够的信息。
-
城市的蛞蝓。在本例中为“巴塞罗那”。
标签: ruby-on-rails ruby ruby-on-rails-3