Ruby on rails 将_链接到具有属性的命名范围

Ruby on rails 将_链接到具有属性的命名范围,ruby-on-rails,named-scope,Ruby On Rails,Named Scope,在花了一个下午的时间在网上搜索之后。我得问问你 在我的应用程序中,我有一个与一个或多个平台关联的游戏列表。我想向用户推荐一些基于平台的过滤器 我知道我必须使用带有属性的命名作用域。但是我不知道如何制作链接,如果你使用:你和你属于多个一个懒惰的方法是获得所有平台和游戏所有游戏的uniq数组: @games = @plataforms.map(&:games).uniq 如果您使用:有许多: # in your game model scope :by_plataforms, lambda

在花了一个下午的时间在网上搜索之后。我得问问你

在我的应用程序中,我有一个与一个或多个平台关联的游戏列表。我想向用户推荐一些基于平台的过滤器


我知道我必须使用带有属性的命名作用域。但是我不知道如何制作链接,如果你使用
:你和你属于多个
一个懒惰的方法是获得所有平台和游戏所有游戏的uniq数组:

@games = @plataforms.map(&:games).uniq
如果您使用
:有许多

# in your game model
scope :by_plataforms, lambda { |plataforms_ids| where(:plataform_id => plataforms_ids) }
示例调用:
Game.by_plataforms([1,2,3])

编辑

要创建路由,您可以使用GamesController中的参数按plataform进行筛选:

def index
  @games = params[:plataform] ? Plataform.find(params[:plataform]).games : Game.all
end
在意见中:

<%= link_to games_path(:plataform => @plataform.id) %>
@plataform.id)%>

Hi,你在使用
:在
Plataform
模型中有很多游戏吗?
has\u和\u属于\u many
要精确,我的问题不是如何确定范围,我知道。但是我如何在我的视图中建立链接来过滤我的游戏列表呢。或者简单地说,如何设置要在控制器中使用的范围