mobilizon.chapril.org-mobil.../priv/repo/migrations/20190208141700_tags_relatio...

23 lines
846 B
Elixir

defmodule Mobilizon.Repo.Migrations.TagsRelations do
use Ecto.Migration
def up do
create table(:tag_relations, primary_key: false) do
add :tag_id, references(:tags, on_delete: :delete_all), null: false, primary_key: true
add :link_id, references(:tags, on_delete: :delete_all), null: false, primary_key: true
add :weight, :integer, null: false, default: 1
end
create constraint(:tag_relations, :no_self_loops_check, check: "tag_id <> link_id")
create index(:tag_relations, [:tag_id], name: :index_tag_relations_tag_id)
create index(:tag_relations, [:link_id], name: :index_tag_relations_link_id)
end
def down do
drop constraint(:tag_relations, :no_self_loops_check)
drop index(:tag_relations, [:tags_id])
drop index(:tag_relations, [:link_id])
drop table(:tag_relations)
end
end