如何在Ecto中更改字段类型?

时间:2015-09-15 10:23:37

标签: elixir phoenix-framework ecto

我有一个架构:

schema "editables" do
    field :title, :string
    field :content, :string

    timestamps
  end

现在,我想将:integer一个字段的类型更改为:binary。 编写迁移的正确方法是什么,因为使用add无效...?

def change do
    alter table(:editables) do
      add :title, :binary
      add :content, :binary

      timestamps
    end
  end

1 个答案:

答案 0 :(得分:29)

您必须使用modify/3来更改类型。 add/3仅用于添加新列。

alter table(:editables) do
  modify :content, :binary
end