我是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指南的非常好的/易于遵循的文章。你应该只需要阅读开头获得你需要的信息。在结尾部分,它处理了更复杂的情况,但这是我见过的最容易理解的解释。