| Start |
|---|
| Single file upload using Carrierwave Start using File Uploads in Rails is quite simple, first thing you have to do is to choice plugin for managing uploads. The most common onces are Carrierwave and Paperclip. Both are similar in functionality and rich in documentation on Let's have an look on example with simple avatar upload image with Carrierwave After This will create an config file located at /app/uploaders/profile_uploader.rb Here you can set up storage (i.e local or cloud), apply extensions for image manipulations (i.e. generting thumbs via MiniMagick) and set server-side extension white list Next, create new migration with string tipe for user_pic and mount uploader for it in user.rb model. Next, display an form to upload avatar (may be an edit view for the user) Make sure to include { multipart: true } in order form can process uploads. Accept is an optional to set client-side extension white-list. To display an avatar, simply do |
| Nested model - multiple uploads If you want to create multiple uploads, first thing you might want to do is create new model and set up relations Let's say you want an multiple images for the Product model. Create an new model and make it accepts_nested_attributes_for is must, because it allow us to create nested form, so we can upload new file, change product name and set price from an single form Next, create form in a view (edit/create) Controller is nothing special, if you don't want to create an new one, just make an new one inside your product controller Display all images in a view |
Read Article
https://develop.horje.com/learn/1434/reference