如何像在 CakePHP 中一样使用递归查询在 RoR 中进行查找
How to make a find in RoR with recursive-query like in CakePHP
所以,我有接下来的 4 个模型:
class Payment < ActiveRecord::Base
has_many :orders
end
class Order < ActiveRecord::Base
has_many :folders
belongs_to :payment
end
class Folder < ActiveRecord::Base
has_many :documents
belongs_to :order
end
class Document < ActiveRecord::Base
belongs_to :folder
end
如何找到一笔付款并检索与该付款相关的所有订单以及这些订单的所有文件夹和这些文件夹的所有文档。在 CakePHP 中,在参数中设置递归就足够了,但在 RoR 中我不知道该怎么做,我必须使用 gem 吗?或者它有其他名字?
您可以将 .includes()
与多个嵌套模型一起使用,例如:
Payment.includes({orders: [{folders: :documents}]}).find(...)
所以,我有接下来的 4 个模型:
class Payment < ActiveRecord::Base
has_many :orders
end
class Order < ActiveRecord::Base
has_many :folders
belongs_to :payment
end
class Folder < ActiveRecord::Base
has_many :documents
belongs_to :order
end
class Document < ActiveRecord::Base
belongs_to :folder
end
如何找到一笔付款并检索与该付款相关的所有订单以及这些订单的所有文件夹和这些文件夹的所有文档。在 CakePHP 中,在参数中设置递归就足够了,但在 RoR 中我不知道该怎么做,我必须使用 gem 吗?或者它有其他名字?
您可以将 .includes()
与多个嵌套模型一起使用,例如:
Payment.includes({orders: [{folders: :documents}]}).find(...)