Rails name_scope 与 has_and_belongs_to_many

2024-03-13

我有 3 个表 - 电影、film_genres(用于连接 2 个表)和流派。 在模型 film.rb 中 - has_and_belongs_to_many :genres 在模型类型.rb - has_and_belongs_to_many :films

那么,我该如何编写这段sql代码:

选择*从genres内部联接films_genres ON genres.id = films_genres.genre_id 哪里 (films_genres.film_id = 1 )

在 Model film.rb 中使用named_scope来显示所有电影类型?


class Model < ActiveRecord::Base
  named_scope :by_genre, lambda { |*genres|
    {
      :include => :genres,
      :conditions => [ "genres.id IN (?)", genres.map(&:id) ]
    }
  }
end

Film.by_genre(western, sci_fi).find(:all)

我使这个稍微复杂一些,以便将多种流派指定为命名范围的一部分。希望能帮助到你。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Rails name_scope 与 has_and_belongs_to_many 的相关文章

随机推荐