Diffuser/lib/diffuser/accounts/user.ex

26 lines
583 B
Elixir

defmodule Diffuser.Accounts.User do
use Diffuser.Schema
import Ecto.Changeset
alias Diffuser.Accounts.Vote
alias Diffuser.Generator.PromptRequest
schema "users" do
field :ip_address, :string
field :username, :string
field :code, :string
has_many :votes, Vote, on_delete: :delete_all
has_many :prompt_requests, PromptRequest, on_delete: :delete_all
timestamps()
end
@doc false
def changeset(user, attrs) do
user
|> cast(attrs, [:ip_address, :username, :code])
|> cast_assoc(:votes)
|> cast_assoc(:prompt_requests)
end
end