¡Realmente he chocado contra una pared y necesito ayuda! ¡Gracias por leer hasta aquí!Subiendo a Ruby on Rails desde iPhone usando ASIHTTPRequest
Estoy en el medio de escribir una aplicación que habla con mi servidor web ROR para las solicitudes de bases de datos y funciona muy bien gracias a ActiveResource. Pero ahora también necesito cargar archivos en el servidor, y planeo usar ASIHTTPRequest, que se ve muy bien, aunque mi problema es que no estoy seguro de cómo entregar la solicitud POST en el lado ROR ... Estoy usando un clip para papeles pero realmente han golpeado una pared de ladrillos.
En el lado ASIHTTP Simplemente estoy escribiendo:
[request setData:data withFileName:@"photo.jpg" andContentType:@"image/jpeg" forKey:@"asset[image]"];
y en el lado de rubí que estoy haciendo ...
class Asset < ActiveRecord::Base
validates_attachment_presence :image
has_attached_file :image
end
class AssetsController < ApplicationController
protect_from_forgery :only => [:update, :destroy]
.....
Pero siempre falla, estoy bastante seguro tiene algo que ver con el conjunto de datos de formulario POST, pero estoy completamente atascado.
estoy recibiendo el error:
Parameters: {"assets"=>{"images"=>#<File:/var/folders/gM/gM15qjM2G3W0iVNaT1evD++++TI/-Tmp-/RackMultipart20091112-2285-2i0qq5-0>}} NoMethodError (You have a nil object when you didn't expect it! You might have expected an instance of ActiveRecord::Base. The error occurred while evaluating nil.[]): app/models/asset.rb:2 app/controllers/assets_controller.rb:46:in
`create'
Cualquier ayuda sería recibida muy, muy agradecido.
Chris
Thanks!
También encontré que debe incluir [request setPostValue: @ "Create" forKey: @ "commit"]; – Chris