0

我有一个可标记的Game模型。现在我想制作一个控制器来按标签显示对象。

我可以使用@tag = ActsAsTaggableOn::Tags.find params[:id]. 但是如何检索与标签关联的所有游戏?@tag.games显然行不通。

4

1 回答 1

1

您可能不需要 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 以获取所有标记为第一人称射击游戏的游戏列表(假设您的索引模板是通用集合列表,无论如何

于 2011-06-26T00:20:19.417 回答