Рассмотрим следующее changeset
:
defmodule Flashcards.Cards.Deck do
use Ecto.Schema
import Ecto.Changeset
schema "decks" do
field :name, :string
field :user_id, :id
timestamps()
end
@doc false
def changeset(deck, attrs) do
deck
|> cast(attrs, [:name, :user_id])
|> validate_required([:name])
|> unique_constraint(:name)
end
end
unique_constraint
(вместе с unique_index
в миграции) делает поле name
уникальным для всех пользователей .
На практике, однако, я хочу сделать поле name
уникальным для пользователя - как лучше всего это сделать?