如何根据模型命名rails路由?

时间:2014-10-19 20:12:41

标签: ruby-on-rails ruby routes

我有一个名为City的模型(它的表是城市,Controller是城市)。我想为表中的每个城市动态创建路线。我也希望城市名称是网址的第一部分。例如,我想要网址说:

mywebsite.com/seattle 

而不是

mywebsite.com/cities/seattle

表格中将有许多城市,可能会创建或删除它们。有谁知道我如何为此设置路线?

1 个答案:

答案 0 :(得分:1)

您可以在网址中使用通配符进行设置。在config/routes.rb放置:

get '/:city', to: 'cities#show'

然后您可以使用

访问show方法中的通配符元素
params[:city]

例如

def show
  @city = City.find_by_name(params[:city])
end