在 elixir 程序中添加 Ecto.Repo

这可以分 3 个步骤完成:

  1. 你必须定义一个使用 Ecto.Repo 的 elixir 模块,并将你的应用程序注册为 otp_app。

    defmodule Repo do
      use Ecto.Repo, otp_app: :custom_app
    end
    
  2. 你还必须为 Repo 定义一些配置,以允许你连接到数据库。这是 postgres 的一个例子。

    config :custom_app, Repo,
       adapter: Ecto.Adapters.Postgres,
       database: "ecto_custom_dev",
       username: "postgres_dev",
       password: "postgres_dev",
       hostname: "localhost",
      # OR use a URL to connect instead
      url: "postgres://postgres_dev:postgres_dev@localhost/ecto_custom_dev"
    
  3. 在应用程序中使用 Ecto 之前,你需要确保在应用程序启动之前启动 Ecto。可以通过在 lib / custom_app.ex 中注册 Ecto 作为主管来完成。

        def start(_type, _args) do
          import Supervisor.Spec
    
          children = [
           supervisor(Repo, [])
          ]
    
          opts = [strategy: :one_for_one, name: MyApp.Supervisor]
          Supervisor.start_link(children, opts)
        end