Rails中的自定义路由



我是rails新手,对路由了解不多。也许这是一个愚蠢的问题,或者已经有答案了。

我想做的是,我有(音乐)流派和艺术家。当我点击显示更多关于类型的内容时,它会将我重定向到show.html。例如,当我点击以显示流派中的艺术家时,我被重定向到艺术家索引页。

我在我的应用程序中创建了一个页脚,从中我想访问数据库中的所有艺术家,而不仅仅是艺术家所属的流派。我想使用现有的控制器。

在我的艺术家控制器中,我有一个函数,

def all_artists
  @artists = Artist.all
end

我想创建一些all_artists.html。与控制器中的函数(如#index或#show do)配合使用的动词

我认为你需要的是一个集合路由。将它添加到你的艺术家restful资源中,在routes文件中:

resources :artists do
  collection do
    get 'all_artists'
  end
end

该代码添加了路由/artists/all_artist,它调用控制器方法all_artists。路由名和控制器方法可以有不同的名称,例如:

get 'all', :as => '#all_artists'

在本例中/artists/all_artist链接到artists#all_artist.

Rails中的路由需要的不仅仅是几句话来解释,但幸运的是有一篇关于Rails指南的非常好的/易于遵循的文章。你应该只需要阅读开头获得你需要的信息。在结尾部分,它处理了更复杂的情况,但这是我见过的最容易理解的解释。

相关内容

  • 没有找到相关文章

最新更新