繁体   English   中英

Rails 3路由

[英]Rails 3 Routing

我有一个community_users模型,我按以下方式路由:

resources :communities do
  resources :users
end

这将创建route /communities/:id/users/

我想配置此路由,以便仅显示具有相应:id的社区的名称。

换句话说,如果社区的ID为“1”且名称为“rails-lovers”,则路径将显示为:

/rails-lovers

并不是:

/communities/1/users/

我不太确定这是不是你想要的,但是:

一种选择是创建路线

match ':community_name' => 'users#show_users_for_community'

然后在UsersController中有

def show_users_for_community
  @community = Community.find_by_name(params[:community_name])
  <do what you need to do here>
end

我不确定该路由是否会匹配太多的URL - 这是一个非常通用的路由。 因此,如果您这样做,可能会将其放在路线文件中。

您可能想要查看gem friendly_id

这将为您提供您正在寻找的干净的URL。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM