upload v0.2.0 Upload.Ecto
Link to this section Summary
Functions
Casts an upload in the params under the given key, uploads it, and assigns it to the field
Casts a path in the params under a given key, uploads it, and assigns it to the field
Add the Upload’s key to the changeset for the given field
Link to this section Functions
cast_upload(Ecto.Changeset.t(), atom(), list()) :: Ecto.Changeset.t()
Casts an upload in the params under the given key, uploads it, and assigns it to the field.
Any options passed to this function will be passed through to Upload.cast.
You can also provide an option :with, which will allow you to use a custom uploader. You can use this mechanism to add validation to your file uploads. See the documentation about Upload.Uploader for more information.
Example
def changeset(user, params \ %{}) do
user
|> cast(params, [:name])
|> Upload.Ecto.cast_upload(:logo)
end
def changeset(user, params \ %{}) do
user
|> cast(params, [:name])
|> Upload.Ecto.cast_upload(:logo, prefix: ["logos"])
end
def changeset(user, params \ %{}) do
user
|> cast(params, [:name])
|> Upload.Ecto.cast_upload(:logo, with: MyCustomUploader)
end
cast_upload_path(Ecto.Changeset.t(), atom(), list()) :: Ecto.Changeset.t()
Casts a path in the params under a given key, uploads it, and assigns it to the field.
This function accepts the same options that Upload.Ecto.cast_upload/2 accepts.
put_upload(Ecto.Changeset.t(), atom(), Upload.t(), list()) :: Ecto.Changeset.t()
Add the Upload’s key to the changeset for the given field.
If the file hasn’t been uploaded yet, it will be.