Erros ao usar o plug-in clipe de papel para trilhos na produção. A imagem não está sendo salva no servidor
Estou executando os trilhos 3 e o clipe de papel 2.3.4. No desenvolvimento do OS X, tudo corre bem, mas há alguns problemas que não consigo entender. Se alguém tiver sugestões, por favor me avise.
Estou carregando o arquivo usando o flash BTW. Como eu disse, o desenvolvimento local funciona muito bem.
Verifiquei o log de produção e parece que o POST está acontecendo muito bem.
Started POST "/addimage" for 10.0.136.119 at 2011-01-13 19:49:09 +0000
Processing by BowlsController#create as HTML
Parameters: {"Filename"=>"IMG_0585.JPG", "fbid"=>"123456789", "Filedata"=>#<ActionDispatch::Http::UploadedFile:0x000000054afdf8 @original_filename="IMG_0585.JPG", @content_type="application/octet-stream", @headers="Content-Disposition: form-data; name=\"Filedata\"; filename=\"IMG_0585.JPG\"\r\nContent-Type: application/octet-stream\r\n", @tempfile=#<File:/tmp/RackMultipart20110113-23741-bhze8q>>, "Upload"=>"Submit Query"}
Completed 200 OK in 64ms (Views: 0.4ms | ActiveRecord: 0.9ms)
Aqui está a ação nos trilhos que estou chamando
def create
@user = User.find_by_fbid(params[:fbid])
if @user.nil?
#create user and register if user does not exist
@user = User.new( :fbid => params[:fbid] )
@user.save
end
if params[:Filedata]
@image = @user.images.build()
@image.swfupload_file = params[:Filedata]
if @image.save
render :json => { :data => @image, :success => true }
else
render :json => { :info => "error", :success => false }
end
else
@image = Image.new params[:img]
if @image.save
render :json => { :data => @bowl, :success => true }
else
render :json => { :info => "error", :success => false }
end
end
end
end
Basicamente, um usuário pode ter muitas imagens, então eu tenho que garantir que ele exista. Se eles não existirem, primeiro crio um novo usuário.
Também tenho outro método que me permite pegar o caminho para a última imagem que o usuário envia e também está retornando um erro na produção.
def last_img
@user = User.find_by_fbid(params[:fbid])
if @user.nil?
render :json => { :error => "no bowls for this user" }
else
bowl = @user.images.first
render :json => { :img_path => image.img.url}
end
end
o erro que estou obtendo para isso é o seguinte NoMethodError no ImagesController # last_image
método indefinido `img 'para nil: NilClass