View Source PaperTrail.Multi (paper_trail v0.13.0)
Provide functions compatible with Ecto.Multi to insert, update and delete records on the database alongside their changes.
Summary
Functions
See PaperTrail.Serializer.add_prefix/2.
See PaperTrail.Serializer.get_item_type/1.
See PaperTrail.Serializer.get_model_id/1.
See PaperTrail.Serializer.get_sequence_from_model/2.
See PaperTrail.Serializer.get_sequence_id/2.
See PaperTrail.Serializer.make_version_struct/3.
See PaperTrail.Serializer.make_version_structs/4.
See Ecto.Multi.new/0.
See PaperTrail.Serializer.serialize/2.
Types
@type changeset() :: Ecto.Changeset.t()
@type multi() :: Ecto.Multi.t()
@type options() :: PaperTrail.options()
@type queryable() :: PaperTrail.queryable()
@type result() :: {:ok, any()} | {:error, any()} | {:error, Ecto.Multi.name(), any(), %{required(Ecto.Multi.name()) => any()}}
@type struct_or_changeset() :: Ecto.Schema.t() | Ecto.Changeset.t()
@type updates() :: PaperTrail.updates()
Functions
See PaperTrail.Serializer.add_prefix/2.
See Ecto.Multi.append/2.
@spec delete(multi(), struct_or_changeset(), options()) :: multi()
See Ecto.Multi.error/3.
See PaperTrail.Serializer.get_item_type/1.
See PaperTrail.Serializer.get_model_id/1.
See PaperTrail.Serializer.get_sequence_from_model/2.
See PaperTrail.Serializer.get_sequence_id/2.
See PaperTrail.Serializer.make_version_struct/3.
See PaperTrail.Serializer.make_version_structs/4.
See Ecto.Multi.merge/2.
See Ecto.Multi.merge/4.
See Ecto.Multi.new/0.
See Ecto.Multi.prepend/2.
See Ecto.Multi.run/3.
See Ecto.Multi.run/5.
See PaperTrail.Serializer.serialize/2.
See Ecto.Multi.to_list/1.