ActiveRecord::UnknownAttributeError

I’m trying to create hotel with some fields, one of the fields is photo,
i
want to use multiple files upload with carrierwave and nested_form. I
found
this
articlehttp://lucapette.com/rails/multiple-files-upload-with-carrierwave-and-nested_form/
and
have some result.

When i’m on /hotels/new
http://img404.imageshack.us/img404/3474/8ta1.png,
filling fields, choosing photos and press submit,
gettingActiveRecord::UnknownAttributeError
in HotelsController#create unknown attribute: attachable_type.

Console

Started POST “/hotels” for 127.0.0.1 at 2013-09-27 17:35:18
+0300Processing by HotelsController#create as HTML
Parameters: {“utf8”=>“✓”,
“authenticity_token”=>“+1T2tuygSnj8unOKkXkRWI4L7KvDE
9PPHrqvag7KmIQ=”, “hotel”=>{“title”=>“dsa”, “address”=>“asd”,
“star_rating”=>“2”, “breakfast”=>“Not include”,
“price_for_room”=>“sadas”, “room_description”=>“Gr
eat room”,
“attachments_attributes”=>{“1380289954031”=>{“file”=>#<ActionDispatch::Http::UploadedFile:0xa5d546c
@original_filename=“11374.jpg”, @content_type=“im
age/jpeg”, @headers=“Content-Disposition: form-data;
name="hotel[attachments_at
tributes][1380289954031][file]";
filename="11374.jpg"\r\nContent-Type: image/
jpeg\r\n”, @tempfile=#<File:/tmp/RackMultipart20130927-7077-50zkol>>,
“_destroy”=>“false”},
“1380289972216”=>{“file”=>#<ActionDispatch::Http::UploadedFile:0xa5d53a4
@original_filename=“357175.jpg”, @content_type=“image/jpeg”,
@headers=“Cont
ent-Disposition: form-data;
name="hotel[attachments_attributes][1380289972216][
file]"; filename="357175.jpg"\r\nContent-Type: image/jpeg\r\n”,
@tempfile=#<F
ile:/tmp/RackMultipart20130927-7077-dlkmwk>>, “_destroy”=>“false”}}},
“commit”=>“Done”}Completed 500 Internal Server Error in 109ms
ActiveRecord::UnknownAttributeError (unknown attribute:
attachable_type):
app/controllers/hotels_controller.rb:15:in new' app/controllers/hotels_controller.rb:15:in create’

Model hotel.rb

class Hotel < ActiveRecord::Base
attr_accessible :address, :breakfast, :price_for_room,
:room_description,
:star_rating, :title, :attachments_attributes

has_many :attachments, :as => :attachable
accepts_nested_attributes_for :attachmentsend

Model attachment.rb

class Attachment < ActiveRecord::Base
attr_accessible :file
belongs_to :attachable, :polymorphic => true
mount_uploader :file, FileUploaderend

hotels_controller.rb


def new
@hotel = Hotel.new
end
def create
@hotel = Hotel.new(params[:hotel])
if @hotel.save
redirect_to hotels_path, notice: "Nice, you added new hotel "

  • @hotel.title
    else
    render “new”
    end
    end

_form.rb

<%= nested_form_for @hotel, :html => {:multipart => true} do |f| %>

<%= f.fields_for :attachments do |attachment_form|%>
<%= attachment_form.label :file %>
<%= attachment_form.file_field :file %>
<%= attachment_form.link_to_remove “Remove this photo” %>
<% end %>
<%= f.link_to_add “Add photo”, :attachments %>
<%= f.submit ‘Done’, class: ‘btn btn-success’ %><% end %>

Any ideas guys? What am I doing wrong here?