mobilizon/priv/repo/migrations/20190222151449_drop_categories.exs

36 lines
892 B
Elixir
Raw Normal View History

defmodule Mobilizon.Repo.Migrations.DropCategories do
use Ecto.Migration
def up do
# The category field is a string for the time being
# while we determine the definitive minimal list of
# categories in https://framagit.org/framasoft/mobilizon/issues/30
# afterwards it will be a PostgreSQL enum and we'll
# just add new elements without being able to delete
# the previous ones
alter table(:events) do
add(:category, :string)
remove(:category_id)
end
drop(table(:categories))
end
def down do
create table(:categories) do
add(:title, :string)
add(:description, :string)
add(:picture, :string)
timestamps()
end
create(unique_index(:categories, [:title]))
alter table(:events) do
remove(:category)
add(:category_id, references(:categories, on_delete: :nothing))
end
end
end