View Source EctoForge.DatabaseApi (ecto_forge v0.1.4)

Implements base functions for database

use(
          EctoForge.DatabaseApi,
          [
            repo: MyApp.Repo, # required param
            extensions_get: [], # default list
            extensions_events: [] # default list
          ]
        )

functions find_all, works only with extension EctoForge.Extension.Get.Preload, EctoForge.Extension.Get.Filter or you can write yours own

This module creates an instance of the database all functions function. It can be used through the use of Parameter

  • create(map) # takes changeset and does repo.insert()
  • create(map, :function_for_changeset),
  • create!(map, :function_for_changeset), # takes function_for_changeset from the module and does repo.insert!()
  • create!(map, :function_for_changeset), # takes the changeset and does a repo.insert!()
  • find_all(map or keyword) # returns result_list or nil
  • find(map or keyword) # returns result or nil
  • get(map or keyword) # returns {:ok, result_one} or {:error, result_one}
  • get!(map or keyword) # returns result or return throw
  • get_all(map or keyword) # returns {:ok, list} or {:error, list}
  • get_all!(map or keyword) # result items or throw(no results)
  • update_by_opts(get_params, update) # result {:ok, item} or {:error, result}
  • update(item, opts_update) # result {:ok, item} or {:error, result}
  • update!(item, update_opts) # return item or throw
  • update(item) # return {:ok, item} or {:error, result}
  • update_with_another_changeset!(%@module_model{} = item, opts, function_atom) # return item or throw
  • update_with_another_changeset(%@module_model{} = item, opts, function_atom) # return {:ok, item} or {:error, result}
  • delete(%@modulemodel{} or opts_for_get) # result {:ok, } or {:error, _}
  • delete!(%@modulemodel{} or opts_for_get) # result {:ok, } or {:error, _}
  • update_or_create!(get_attrs, or_insert_update_attrs, opts )
  • update_or_create(get_attrs, or_insert_update_attrs, opts )