我有一个可标记的Game
模型。现在我想制作一个控制器来按标签显示对象。
我可以使用@tag = ActsAsTaggableOn::Tags.find params[:id]
. 但是如何检索与标签关联的所有游戏?@tag.games
显然行不通。
我有一个可标记的Game
模型。现在我想制作一个控制器来按标签显示对象。
我可以使用@tag = ActsAsTaggableOn::Tags.find params[:id]
. 但是如何检索与标签关联的所有游戏?@tag.games
显然行不通。
您可能不需要 TagsController。
要获得您特别要求的内容,您可以使用:
@tagged_games = Game.tagged_with :some_tag
如果标签是传递给该控制器操作的东西,您可以动态找到它:
在 routes.rb 中:
match 'games/tagged/:id' => 'games#tag', :as => :tags
在游戏控制器中:
def tag
@games = Game.tagged_with(params[:id])
render :index
end
例如,这将允许用户转到 /games/tagged/fps 以获取所有标记为第一人称射击游戏的游戏列表(假设您的索引模板是通用集合列表,无论如何