Rails应用程序,获取不同的URL

时间:2014-01-16 20:42:33

标签: ruby-on-rails url model routing gallery

我正在重建我的网站照片库,并希望每个部分都有不同的URL方案,我只是不确定如何去做。

我需要获得模型的结构等。

画廊由4个模型组成:

  • 集合
  • 相册
  • 照片
  • PhotoSize

集合可以包含其他集合或专辑,但不能同时包含两者。

我希望画廊的主要网址是/ gallery而不是当前/集合

因此,当用户在图库中更深入地导航时,我希望URL成为以下内容:

/画廊/集合/ collection1name /专辑/ album1name /照片/ photo1name

如果用户只有1张照片,1张专辑和1个深度集合......

/画廊/集合/ collection1name /集合/ collection2name /专辑/ album1name /照片/ photo1name

如果用户是多个深度集合。

这是如何继续添加我坚持的收藏水平。

我有什么想法可以使用我所拥有的创建URL的方式吗?

1 个答案:

答案 0 :(得分:0)

http://edgeguides.rubyonrails.org/routing.html#route-globbing-and-wildcard-segments

你必须覆盖零深路径

resources :photos
resources :albums
resources :collections

现在要涵盖无限深度

get '/gallery/*path/photos/:photo' => 'Photos#show'
get '/gallery/*path/albums/:album' => 'Albums#show'
get '/gallery/*path/collections/:collection' => 'Collections#show'