36 lines
892 B
Elixir
36 lines
892 B
Elixir
|
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
|