AMcoder - javascript, python, java, html, php, sql

ինչպես վերբեռնել բազմաթիվ պատկերներ՝ օգտագործելով թղթի սեղմիչ

Ես ստեղծում եմ հավելված, որն ունի «Պատկերասրահ» մոդել: Ես ունեմ մեկ այլ մոդել, որը «GalleryPhoto»-ն է։ Հարաբերություններն են՝ Gallery has_many GalleryPhoto և GalleryPhoto belongs_to Gallery:

Հետևյալը իմ ստեղծած մոդելներն են.

class Gallery < ActiveRecord::Base
  has_many :gallery_photos, dependent: :destroy
end

class GalleryPhoto < ActiveRecord::Base
  belongs_to :gallery
  has_attached_file :photo
  validates_attachment_content_type :photo, :content_type => ['image/jpeg', 'image/jpg', 'image/png']
end

Այժմ Պատկերասրահը ստեղծելուց հետո, դրա ինդեքսային էջում ես ունեմ լուսանկարներ ավելացնելու հղումը, որը կբացի էջ՝ լուսանկարներ ավելացնելու համար: Այս էջում ես կկարողանամ լուսանկարներ ավելացնել թղթի սեղմակի միջոցով:

Սա իմ new.html.erb-ն է gallery_photo-ի համար.

<%= form_for @gallery_photo,html: { multipart: true},url: gallery_photos_path,method: :post do |f| %>

              <%= f.hidden_field :gallery_id, value: params[:gallery_id]%>
              <%=f.file_field :photo%>
              <%= f.submit "Start Upload",class: "btn btn-primary actions"%>
        <% end %>

Ես կարող եմ վերբեռնել մեկ լուսանկար: Բայց ես չեմ հասկանում, թե ինչպես վերբեռնել մի քանի լուսանկարներ՝ օգտագործելով թղթի սեղմիչ: Ցանկացած օգնություն ինձ կգնահատի:



Պատասխանները:


1

Ահա իմ կոդը, որը լավ աշխատեց մի քանի ֆայլ վերբեռնելու համար՝ օգտագործելով թղթի սեղմիչ.

Հետևյալ կոդը ցույց է տալիս նորմալ մեթոդ.

User.rb

ունի_շատ :պատկերներ, :կախված =› :քանդել

Image.rb

has_attached_file :avatar, :styles =› {:միջին =› 300x300› }

belongs_to :user

users/views/new.html.erb

<%= form_for @user, :html => { :multipart => true } do |f| %>

...... 
 ....

<%= file_field_tag :avatar, multiple: true %>

<% end  %>

Users_controller:

.....

    if @user.save
     # params[:avatar] will be an array.
     # you can check total number of photos selected using params[:avatar].count
      params[:avatar].each do |picture|      
    
        @user.images.create(:avatar=> picture)
        # Don't forget to mention :avatar(field name)
    
      end
    end

Ահա և վերջ: պատկերներ են վերբեռնվել:

06.05.2016
  • Շնորհակալություն պատասխանի համար: Իմ հասկացողությամբ սա նաև օգտատեր կստեղծի, չէ՞: Բայց ես ուզում եմ լուսանկարներ ավելացնել առկա պատկերասրահում: Ես չեմ ուզում ստեղծել նոր պատկերասրահ լուսանկարներ վերբեռնելու համար: 06.05.2016
  • Նոր նյութեր

    Օգտագործելով Fetch Vs Axios.Js-ը՝ HTTP հարցումներ կատարելու համար
    JavaScript-ը կարող է ցանցային հարցումներ ուղարկել սերվեր և բեռնել նոր տեղեկատվություն, երբ դա անհրաժեշտ լինի: Օրինակ, մենք կարող ենք օգտագործել ցանցային հարցումը պատվեր ներկայացնելու,..

    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար
    Տիրապետել հանգստության արվեստին. մշակողի ուղեցույց՝ ճնշման տակ ծաղկելու համար Ինչպե՞ս հանգստացնել ձեր միտքը և աշխատեցնել ձեր պրոցեսորը: Ինչպես մնալ հանգիստ և զարգանալ ճնշման տակ...

    Մեքենայի ուսուցում բանկային և ֆինանսների ոլորտում
    Բարդ, խելացի անվտանգության համակարգերը և հաճախորդների սպասարկման պարզեցված ծառայությունները բիզնեսի հաջողության բանալին են: Ֆինանսական հաստատությունները, մասնավորապես, պետք է առաջ մնան կորի..

    Ես AI-ին հարցրի կյանքի իմաստը, այն ինչ ասում էր, ցնցող էր:
    Այն պահից ի վեր, երբ ես իմացա Արհեստական ​​ինտելեկտի մասին, ես հիացած էի այն բանով, թե ինչպես է այն կարողանում հասկանալ մարդկային նորմալ տեքստը, և այն կարող է առաջացնել իր սեփական արձագանքը դրա..

    Ինչպես սովորել կոդավորումը Python-ում վագրի պես:
    Սովորելու համար ծրագրավորման նոր լեզու ընտրելը բարդ է: Անկախ նրանից, թե դուք սկսնակ եք, թե առաջադեմ, դա օգնում է իմանալ, թե ինչ թեմաներ պետք է սովորել: Ծրագրավորման լեզվի հիմունքները, դրա..

    C++-ի օրական բիթ(ե) | Ամենաերկար պալինդրոմային ենթաշարը
    C++ #198-ի ամենօրյա բիթ(ե), Ընդհանուր հարցազրույցի խնդիր. Ամենաերկար պալինդրոմային ենթատող: Այսօր մենք կանդրադառնանք հարցազրույցի ընդհանուր խնդրին. Ամենաերկար palindromic substring...

    Kydavra ICAReducer՝ ձեր տվյալների ծավալայինությունը նվազեցնելու համար
    Ի՞նչ է ICAReducer-ը: ICAReducer-ն աշխատում է հետևյալ կերպ. այն նվազեցնում է նրանց միջև բարձր փոխկապակցված հատկանիշները մինչև մեկ սյունակ: Բավականին նման է PCAreducer-ին, չնայած այն..