Ruby on Rails Monday, September 30, 2013

I'm currently new to Rails and Ruby and I'm trying to learn from my mistakes, this time I'm trying to upload 2 files from a form for later processing, however, after I hit the "Submit" button. I keep getting this error:

TypeError in UploadFilesController#create

app/controllers/upload_files_controller.rb:28:in `new'  app/controllers/upload_files_controller.rb:28:in `create'

Request

Parameters:

{"utf8"=>"✓",   "authenticity_token"=>"2JJGtRXjWCZlPNhQdx6wOW4xvTseiRaXNylnUYvA5v4=",   "upload_files"=>{"inventory"=>#<ActionDispatch::Http::UploadedFile:0x2fd8940 @original_filename="1_Inventory.xlsx",   @content_type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",   @headers="Content-Disposition: form-data; name=\"upload_files[inventory]\"; filename=\"1_Inventory.xlsx\"\r\nContent-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\r\n",   @tempfile=#<Tempfile:C:/Users/V80042~1/AppData/Local/Temp/RackMultipart20130930-9236-qiqijn>>,   "material_list"=>#<ActionDispatch::Http::UploadedFile:0x2fe3cf8 @original_filename="2_Material_List.xlsx",   @content_type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",   @headers="Content-Disposition: form-data; name=\"upload_files[material_list]\"; filename=\"2_Material_List.xlsx\"\r\nContent-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet\r\n",   @tempfile=#<Tempfile:C:/Users/V80042~1/AppData/Local/Temp/RackMultipart20130930-9236-g22588>>},   "commit"=>"Upload"}

My upload_files_controller:

 class UploadFilesController < ApplicationController       def new          @uploadFiles = UploadFiles.new  end      def create      @uploadFiles = UploadFiles.new(params[:upload_files])  end

Models:

Upload_Files:

class UploadFiles < ActiveRecord::Base    attr_accessible :inventory, :material_list    has_one :inventory    has_one :material_list    has_attached_file :inventory, :material_list      def new      {        "name" => read_attribute(:upload_file_name),        "size" => read_attribute(:upload_file_size),        "url" => upload_file.url(:original),        "delete_url" => upload_file_path(self),        "delete_type" => "DELETE"         }    end  end

Inventory:

class Inventory < ActiveRecord::Base    belongs_to :upload_files  end

Material List:

class MaterialList < ActiveRecord::Base    belongs_to :upload_files  end

_form:

<%= form_for :upload_files do |f| %>  <h3>Upload Inventory</h3>  <%= f.file_field :inventory %>  <h3>Upload Product List</h3>  <%= f.file_field :material_list %>  <div class="actions">      <%= f.submit "Upload" %>  </div>  <% end %>

Could you please tell me what am I doing wrong and how to fix it? Thank you in advance.


Note: In case you haven't noticed, I'm using paperclip and rails 3.x.x

--
You received this message because you are subscribed to the Google Groups "Ruby on Rails: Talk" group.
To unsubscribe from this group and stop receiving emails from it, send an email to rubyonrails-talk+unsubscribe@googlegroups.com.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/rubyonrails-talk/1197451b-7c77-48fe-96ea-45783058f468%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

No comments:

Post a Comment