lolix
lolix

Reputation: 1527

upload file ajax call

I am trying to upload and render a csv via an ajax call, but I am receiving this error: "ActionController::UnknownFormat". What I am doing wrong ?

Controller:

class HomesController < ApplicationController
  def index
    @items = []
  end

  def upload
    myfile = params[:file]
    @items = CSV.read(myfile.path)
    respond_to do |format|
      format.js
    end
  end
end

View:

<%= form_tag(homes_upload_path, multipart: true, remote: true, :authenticity_token => true) do %>
  <%= file_field_tag :file %>
  <%= submit_tag( "Import" ) %>
<% end %>

<div>
  <div id="items_grid" >
    <%= render partial: 'items_list', locals: {items: @items}  %>
  </div>
</div>

upload.js.erb:

$("#items_grid").html("<%= escape_javascript(render partial: 'items_list', locals: { items: @items } ) %>");

Upvotes: 0

Views: 202

Answers (1)

abhsss96
abhsss96

Reputation: 353

Rails remote true does not support in case of attachments. Please use 'remotipart' gem for this functionality.

gem 'remotipart', '~> 1.2'

bundle install

//= require jquery.remotipart

Remotipart Gem

Upvotes: 1

Related Questions