Packages
ami_models
0.1.0
Package containing all AMI Models shared between micro-services.
Retired package: Deprecated - faulty
Current section
Files
Jump to
Current section
Files
lib/ami/share.ex
defmodule Ami.Share do
use Ecto.Schema
import Ecto.{
Query,
Changeset
}
alias Ami.{
# Post,
User,
Repo
}
schema "shares" do
field(:shareable_id, :integer)
field(:shareable_type, :string)
field(:created_at, :utc_datetime)
field(:updated_at, :utc_datetime)
belongs_to(:user, User)
end
def preload_shares(struct, shareable_type) do
struct
|> Repo.preload(
shares: from(s in __MODULE__, where: s.shareable_type == ^shareable_type, order_by: s.id)
)
end
def create_share(params) do
%__MODULE__{}
|> cast(params, [:shareable_type, :shareable_id, :user_id, :created_at, :updated_at])
|> Repo.insert()
end
end