Ruby on rails Ruby 1.9.2+valums+rawfileupload=无交易
在升级Macbook之前,我使用了Ruby 1.8.7和Rails 3.0.9,我的应用程序运行得非常好 UPD:实际上问题不同,请参见下面的答案 现在我有了与Gemfile中相同的Rails,但是Ruby版本是1.9.2,我有一些问题。其中之一就是我已经失去了通过valums AJAX uploader和rawfileupload上传文件的能力。显然,所有数据都是通过以下方式传递的:Ruby on rails Ruby 1.9.2+valums+rawfileupload=无交易,ruby-on-rails,Ruby On Rails,在升级Macbook之前,我使用了Ruby 1.8.7和Rails 3.0.9,我的应用程序运行得非常好 UPD:实际上问题不同,请参见下面的答案 现在我有了与Gemfile中相同的Rails,但是Ruby版本是1.9.2,我有一些问题。其中之一就是我已经失去了通过valums AJAX uploader和rawfileupload上传文件的能力。显然,所有数据都是通过以下方式传递的: {"photo"=>{ "image"=>#<ActionDispatch::Http:
{"photo"=>{
"image"=>#<ActionDispatch::Http::UploadedFile:0x007fd47fe5df20
@original_filename="appleberry.jpg", @content_type="image/jpeg", @headers=nil,
@tempfile=#<File:blah-blah a real file, i can see it>},
"album_id"=>"6",
"authenticity_token"=>"<is ok>=", "qqfile"=>"appleberry.jpg"
}
它不可能是控制器,因为它非常简单
@photo = Photo.new(params[:image])
@photo.album_id = params[:album_id]
if @photo.save
...
这是一个棘手的问题,我甚至尝试降级到ruby 1.8.7,因为我使用的是rvm,但我还没有得到它。如果最好的方法是使用1.8.7,我会这样做,但是,请告诉我怎么做=
谢谢 我发现这是我的错误。在rails中,我错误地声明了Photo.new,我使用了params[:image],但它应该是params[:Photo]。这就是为什么我在一个查询中得到很多空值 下次保存图像时请记住这一点
@photo = Photo.new(params[:image])
@photo.album_id = params[:album_id]
if @photo.save
...