我试图查询每个人的点击次数。 所以我可以展示一下那个董事会成员的表格。并为每个人显示他获得的点击次数。
如何为此信息创建activeRecord查询?
我的3个模特:
class Click < ActiveRecord::Base
belongs_to :board
belongs_to :person
end
class Board < ActiveRecord::Base
has_many :persons, dependent: :destroy
has_many :clicks, dependent: :destroy
end
class Person < ActiveRecord::Base
belongs_to :board
has_many :clicks, dependent: :destroy
end
答案 0 :(得分:1)
嗯,有很多方法可以为此构建查询,其中之一是:
Click.where(person_id: your_person_id_variable, board_id: your_board_id_variable)
通过这种方式,您可以获得人员和董事会信息的一系列点击次数。您还有阵列大小,表示点击次数。
您也可以使用board
作为主要模型,并使用sql joins
带来其他数据。它基本上是相同的方法:
Board.joins([:persons, :clicks]).where("persons.id = #{your_person_id_variable}
AND clicks.id = #{your_board_id_variable}")
您应该查看这部分关系中的Rails指南和ActiveRecord查询接口。还可以大量使用Rails控制台,您可以在那里测试任何内容,并使其易于理解所有概念。