[#923] Registration validations & unique index on [:user_id, :provider].
authorIvan Tashkinov <ivant.business@gmail.com>
Mon, 18 Mar 2019 17:31:24 +0000 (20:31 +0300)
committerIvan Tashkinov <ivant.business@gmail.com>
Mon, 18 Mar 2019 17:31:24 +0000 (20:31 +0300)
lib/pleroma/registration.ex
priv/repo/migrations/20190315101315_create_registrations.exs

index 1bd91a31652adaf8522c503ee104d13dd0f8afe3..773e25fa604b05effcefa33b4f8bcac58b86d1c8 100644 (file)
@@ -23,6 +23,7 @@ defmodule Pleroma.Registration do
   def changeset(registration, params \\ %{}) do
     registration
     |> cast(params, [:user_id, :provider, :uid, :info])
+    |> validate_required([:provider, :uid])
     |> foreign_key_constraint(:user_id)
     |> unique_constraint(:uid, name: :registrations_provider_uid_index)
   end
index dac86b7805ddbe77532e68e521339c14c60ee056..c566912f5ef3390bb74d902ccbf8f1fdf4ccd32b 100644 (file)
@@ -12,5 +12,6 @@ defmodule Pleroma.Repo.Migrations.CreateRegistrations do
     end
 
     create unique_index(:registrations, [:provider, :uid])
+    create unique_index(:registrations, [:user_id, :provider])
   end
 end