Ecto.Repo 检查数据库中是否存在 id,Phoenix 框架

Saw*_*too 6 ecto phoenix-framework

  • 如何检查数据库中是否存在ID?

    def get_user!(id), do: Repo.get!(User, id)
    
    Run Code Online (Sandbox Code Playgroud)
  • get_user!(id) 可以用来获取用户,有没有办法检查id是否存在?

  • 我想要像下面这样的东西,它会返回true。

    MyApp.Accounts.get_user!(user_id) == %MyApp.Accounts.User{id: user_id}

Den*_*nis 11

Ecto v3 支持这一点 Ecto.Repo.exists?/2

import Ecto.Query, only: [from: 2]

Repo.exists?(from u in User, where: u.id == ^user_id)
Run Code Online (Sandbox Code Playgroud)