-
Notifications
You must be signed in to change notification settings - Fork 148
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Storing a file without Plug.Upload #11
Comments
I figured out something that works, but not sure if it is correct.
|
I need the same thing, I tried to fake the plug upload, but didn't work params = %{
avatar: %Plug.Upload{
content_type: "image/jpeg",
filename: "#{user.id}.jpeg",
path: file_url
}
}
changeset = User.update_changeset(user, params)
response = Repo.update(changeset)
#THE CHANGESET METHOD
def update_changeset(model, params \\ :empty) do
|> cast(params, @required_fields, @optional_fields)
|> cast_attachments(params, @required_file_fields, @optional_file_fields)
end |
@darksheik so you had to upload the file manually and after that update the record on the database? |
Hi Michel! You don't need a Plug.Upload! Just create a regular Elixir map
|
@stavro I tried but doesn't work I'm testing with the lastest elixir version |
Ok - I will be back in town on Tuesday and help resolve. Apologies for the
|
Sorry I missed this activity!
I did this:
|
@darksheik that worked for me but I don't think it be the best solution |
I agree - should just be able to do it in one go. |
An example from the local harddrive: params = %{"avatar" => "/Users/sean/Downloads/picture.png"}
User
|> Repo.get!(1)
|> User.update_avatar(params)
|> SchedWeb.Repo.update!
# models/user.ex
def update_avatar(user, params) do
user
|> cast_attachments(params, ~w(), ~w(avatar))
end |
Your example passes a
Plug.Upload
parameter to store the file in the database.Can you provide an example of an update that just uploads a file from your hard drive?
I want to be able to do something like this:
The file is successfully stored on S3, but I am not sure what the changeset is expecting me to pass.
The text was updated successfully, but these errors were encountered: