2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Phoenix Frameworkでテーブルを管理する

Posted at

Phoenix Frameworkでデータベースを使う

テーブル管理

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

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?