Comments (10)
I figured out something that works, but not sure if it is correct.
Repo.update!(%{model_record | attachment: %{file_name: filename, updated_at: Ecto.DateTime.utc}})
from arc_ecto.
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
from arc_ecto.
@darksheik so you had to upload the file manually and after that update the record on the database?
from arc_ecto.
Hi Michel! You don't need a Plug.Upload! Just create a regular Elixir map
with the filename and path and it should work just fine.
On Dec 31, 2015 7:10 PM, "Michel Perez" [email protected] wrote:
@darksheik https://github.com/darksheik so you had to upload the file
manually and after that update the record on the database?—
Reply to this email directly or view it on GitHub
#11 (comment).
from arc_ecto.
@stavro I tried but doesn't work I'm testing with the lastest elixir version
from arc_ecto.
Ok - I will be back in town on Tuesday and help resolve. Apologies for the
confusion!
On Jan 1, 2016 10:30 PM, "Michel Perez" [email protected] wrote:
@stavro https://github.com/stavro I tried but doesn't work I'm testing
with the lastest elixir version—
Reply to this email directly or view it on GitHub
#11 (comment).
from arc_ecto.
Sorry I missed this activity!
Yes, uploading to S3 manually. With my model set up to store the file on S3 in the "attachment" field (see the https://github.com/stavro/arc repo):
field :attachment, MyApp.Attachment.Type
I did this:
{:ok, s3_filename} = MyApp.Attachment.store({local_filename, record}) # Upload to S3
Repo.update!(%{record |
attachment: %{file_name: s3_filename, updated_at: Ecto.DateTime.utc}}
)
from arc_ecto.
@darksheik that worked for me but I don't think it be the best solution
from arc_ecto.
I agree - should just be able to do it in one go.
from arc_ecto.
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
from arc_ecto.
Related Issues (20)
- 2 pictures in one schema HOT 1
- Ecto 3.0 emits warnings when using arc_ecto HOT 3
- arc_ecto not working with ecto 3 HOT 15
- Examples for saving arc photo from websocket? HOT 1
- Dialyzer error HOT 1
- Problem with Tests
- Support for signed Cloudfront web distributions.
- Specify Field Name In Scope
- Truncating updated_at broke my tests
- Cant get upload from frontend to work with Ecto 3 and arc_ecto in Phoenix API. HOT 1
- Uploading to S3 from a remote URL returns a SignatureDoesNotMatch error
- Fix Ecto 3.2 warnings HOT 3
- Adding or changing versions HOT 3
- Timout when transforming image HOT 1
- Upload via remote URL doesn't seem to work. HOT 1
- allow_urls feature to allow upload for valid URLs only HOT 1
- arc_ecto requires arc 0.8.0 HOT 1
- Error uploading to S3 with 0.10.0 HOT 2
- Microseconds in updated_at timestamp HOT 4
- Todo: Support Ecto 3 HOT 5
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from arc_ecto.