Не уверен, что здесь происходит, но я думаю, что мои частичные вложенные формы вызывают проблемы для CarrierWave.
Когда я обновляю поле с загруженным файлом, ничего не происходит: ошибки нет, но ничего не сохраняется.
У меня есть модель "Домашнее хозяйство" с отношением "has_many" к модели "Физические лица".Модель "Индивидуумы" имеет загрузчик "картинка":
class Individual < ActiveRecord::Base
belongs_to :household
mount_uploader :picture, PictureUploader
end
На мой взгляд, у меня есть:
= form_for @household, :html => {:multipart => true} do |f|
, а затем я вызываю частичное для людей:
= f.fields_for :individuals do |builder|
= render 'individual_fields', :f => builder
= f.submit
Партиал имеет только следующее:
= f.label :firstname, 'First'
= f.text_field :firstname, :size => 10
= f.label :lastname, 'Last'
= f.text_field :lastname, :size => 15
= f.file_field :picture
Загруженное изображение появляется в параметрах:
Started POST "/households/849" for 127.0.0.1 at 2011-02-15 15:45:16 -0500
Processing by HouseholdsController#update as HTML
Parameters: {"...6/1/2008; Active 6/6", "individuals_attributes"=>{"0"=>{"firstname"=>"Hannah", ...
"picture"=>#<ActionDispatch::Http::UploadedFile:0xb9fbd24 @original_filename="3.jpg",
@content_type="image/jpeg", @headers="Content-Disposition: form-data;
name=\"household[individuals_attributes][1][picture]\"; filename=\"3.jpg\"\r\nContent-Type:
image/jpeg\r\n", @tempfile=#<File:/tmp/RackMultipart20110215-6498-ba4bp>>, "_destroy"=>"false",
"id"=>"4077"}}}, "commit"=>"Update Household", "id"=>"849"}
И сохраняется в каталоге tmp под путем загрузки.Он просто никогда не сохраняется в базе данных и не перемещается в файловую систему.
Есть идеи?