Ecto 是 Elixir 官方維護的一個數據庫存取的框架,使用概念上跟很多其他語言的ORM類似,可以建立遷移,存取資料等。
要使用 Ecto,首先我們需要先在mix.exs中新增依賴,ecto,以及postgrex,一個用來連接Posgresql的套件。
執行mix deps.get
defp deps do
[
{:plug_cowboy, "~> 2.0"},
{:poison, "~> 3.1"},
{:ecto_sql, "~> 3.2"},
{:postgrex, "~> 0.15"}
# {:dep_from_hexpm, "~> 0.3.0"},
# {:dep_from_git, git: "https://github.com/elixir-lang/my_dep.git", tag: "0.1.0"}
]
end
利用mix ecto.gen.repo -r [儲存庫模組名]
指令,我們可以創建儲存庫,利用儲存庫模組,我們可以完成跟資料庫的溝通。
mix ecto.gen.repo -r Users.Repo
指令執行完後,會產生下列檔案:
config/config.exs
import Config
config :test_app, Users.Repo,
database: "test_app_repo",
username: "user",
password: "pass",
hostname: "localhost"
以及
lib/users/repo.ex
defmodule Users.Repo do
use Ecto.Repo,
otp_app: :test_app,
adapter: Ecto.Adapters.Postgres
end
[待補]