如何在不使用存储库软删除的情况下预加载



使用ElixirEcto.RepoPostgres.

我通过连接表UserRelationsUserCompany之间建立了关联。我正在为公司用户构建一个函数中的动态查询。

在公司架构中,我使用软删除,因此在预加载中,我想排除它们,我可以在预加载中使用 opts 吗?

dynamic_query
|> Repo.all
|> Repo.preload(include_deleted: false)

您可以显式查询:deleted_at字段:

preload_query =
from c in Company, where: fragment("deleted_at IS NULL")
dynamic_query
|> Repo.all()
|> Repo.preload(preload: [company: ^preload_query])

基于这个要点

相关内容

最新更新