Я пытаюсь связать две модели (пользователь и страна), где:
· Страна имеет_ многих пользователей.
· Пользователь принадлежит_ к одной стране.
ТакжеЯ использую UUID в качестве первичного ключа для двух моделей, поэтому у меня нет типа: id, чтобы связать их, и есть только строки для этого.Страны статичны, но я создам много пользователей.
Как мне соотнести эти две модели и какие параметры я должен записать в две функции в схемах (has_many & own_to)?И какую функцию я должен вызвать, чтобы связать их: cast_assoc, build_assoc или put_assoc?
Спасибо !!
@primary_key {:uuid, :string, []}
@derive {Phoenix.Param, key: :uuid}
schema "countries" do
field :country_name, :string
has_many :users, UserManagement.User, foreign_key: :country_id
end
@primary_key {:uuid, :string, []}
@derive {Phoenix.Param, key: :uuid}
schema "users" do
field :nickname, :string
field :password, :string, virtual: true
belongs_to :country, UserManagement.Country, references: :uuid
timestamps()
end