Current section

Files

Jump to
kiln lib kiln model.ex
Raw

lib/kiln/model.ex

defmodule Kiln.Model do
alias Kiln.Utils
defmacro __using__(opts \\ []) do
quote do
alias unquote(
Utils.option_or_mod_replace(
__CALLER__.module,
opts,
:schema,
Schemas
)
)
@caller unquote(__CALLER__.module)
@schema Utils.option_or_mod_replace(
@caller,
unquote(opts),
:schema,
Schemas
)
def new(params, _user), do: @schema.new(params)
def get(params, _user), do: @schema.get(params)
def get_count(params, _user), do: @schema.get_count(params)
def show(id, _user), do: @schema.show(id)
def update(item, params), do: @schema.update(item, params)
def edit(params, id, _user), do: @schema.edit(params, id)
def delete(id, _user), do: @schema.delete(id)
defoverridable new: 2,
get: 2,
get_count: 2,
show: 2,
update: 2,
edit: 3,
delete: 2
end
end
end