问题描述
我们通过将 deleted_at
列设置为某个日期来在 Ecto 中使用软删除。
这就是为什么我们的基本架构不是 "public"
的原因,因为 - 默认情况下 - 我们不想查询已删除的记录。
我们的架构只是一个视图,其中仅包含 {{1} }}。
但是,出于报告目的,我们还必须预加载已删除的记录,我们这样做:
deleted_at=NULL
有没有办法以更简单、更简洁的方式从 @preload [
tickets: {
from(ticket in Ticket,prefix: "public"),[
fees: {
from(fee in Fee,[
fee: from(fee1 in Fees.Fee,ticket: from(ticket1 in Ticket,prefix: "public")
]
},taxes: from(tax in Tax,payments: {from(payment in Payment,[:refunds]}
]
}
]
架构中查询所有内容?
解决方法
如果您想从该架构中查询所有关联,您可以在 Repo.all
、Repo.one
、Repo.preload
或用于运行查询的任何其他函数中设置前缀:>
Repo.all(query,prefix: "public")
Repo.one(query,prefix: "public")
Repo.preload(entity,@preload,prefix: "public")