Sto lavorando all'implementazione di Ajax-Upload per il caricamento di foto nella mia app Rails 3. La documentazione dice:Rails 3 ottiene i dati di posta non elaborati e li scrive nel file tmp
For IE6-8, Opera, older versions of other browsers you get the file as you normally do with regular form-base uploads.
For browsers which upload file with progress bar, you will need to get the raw post data and write it to the file.
Quindi, come posso ricevere i dati post prime mio controller e scrivere in un file tmp quindi il mio controller può quindi elaborare esso? (Nel mio caso il regolatore sta facendo un po 'di manipolazione delle immagini e il salvataggio a S3.)
Alcune informazioni aggiuntive:
Come sto configurato in questo momento il palo sta passando questi parametri:
Parameters:
{"authenticity_token"=>"...", "qqfile"=>"IMG_0064.jpg"}
... e CREATE azione è simile al seguente:
def create
@attachment = Attachment.new
@attachment.user = current_user
@attachment.file = params[:qqfile]
if @attachment.save!
respond_to do |format|
format.js { render :text => '{"success":true}' }
end
end
end
... ma ottengo questo errore:
ActiveRecord::RecordInvalid (Validation failed: File file name must be set.):
app/controllers/attachments_controller.rb:7:in `create'
Ho appena pubblicato un esempio di caricamento Ajax su rotaie 3 + Uploadify qui: https://github.com/apneadiving/Pic-upload---Crop-in-Ajax. Spero che possa aiutare – apneadiving