我有以下结构:
Order
有很多Products
Product
有一个Template
Order
有许多Templates
到Products
。
我的查询如下:
def with_template(query \\ Product) do
from q in query, preload: :template
end
def with_products(query \\ Order) do
from q in query, preload: :products
end
当我这样做时:
OrderQuery.with_products |> ProductQuery.with_products |> Repo.all
我收到错误,因为当然
Order does not have association :template
我需要预先加载:templates
。有没有办法不写其他查询?
我想避免:
from q in Order, preload: [products: :template]
但结合并使用已定义的查询。