Ecto has some reflection with
__schema__
For example…
iex> Accounts.User.__schema__ :fields
[:id, :name, :email, :password_hash, :is_admin, :customer_info, :inserted_at,
:updated_at]
iex> Accounts.User.__schema__ :type, :id
:id
iex> Accounts.User.__schema__ :type, :name
:string
iex> Accounts.User.__schema__ :associations
[]
The list is not complete…
def __schema__(:prefix)
def __schema__(:source)
def __schema__(:fields)
def __schema__(:query_fields)
def __schema__(:primary_key)
def __schema__(:hash)
def __schema__(:read_after_writes)
def __schema__(:autogenerate_id)
def __schema__(:autogenerate)
def __schema__(:autoupdate)
...
This works for Ecto schema, but not for struct ![]()


















