テーブル管理
Ectoを使って管理します。
Phoenix FrameworkというよりもElixirのツールの使い方になります。
テーブルへ項目の追加
既存のテーブルに項目を追加したい場合の操作手順です。
下のコマンドを実行すると新たにマイグレーションファイルが作成されます。
mix ecto.gen.migration ファイル名
例:add_columnという名前でマイグレーションファイルを作成します。
mix ecto.gen.migration add_column
作成されたマイグレーションファイル
を下のように書き換えます。
priv/repo/migrations/XXXXXXXXXXXXXX_add_column.exs
defmodule App.Repo.Migrations.AddColumn do
use Ecto.Migration
def change do
alter table(:blog_posts) do
add :body, :text
end
end
end
下のコマンドでマイグレーションファイルを反映します。
mix ecto.gen.migrate
以上で、テーブルに項目が追加されました。
マイグレーションファイルの内容
マイグレーションファイルは下のような内容で、
SQLに近いものと思います。
priv/repo/migrations/XXXXXXXXXXXXXX_add_column.exs
defmodule App.Repo.Migrations.AddColumn do
use Ecto.Migration
def change do
テーブル/インデックスの操作(create,alter,drop) (table,index)(:テーブル/インデックス名) do
カラムの操作(add,remove,modify) :項目名, :データ型
end
end
end
テーブルの操作について
テーブル操作(追加、変更、削除など)の詳細については、
下のリファレンスを確認してください。
https://hexdocs.pm/ecto_sql/Ecto.Migration.html