Как использовать «Ajax Upload» с Ruby on Rails? - PullRequest
3 голосов
/ 24 марта 2011

Я использую этот скрипт http://valums.com/ajax-upload/ для загрузки Ajax, работающей с Ruby on Rails

, но когда я пытаюсь загрузить файл на действие контроллера, я получаю только это:

Parameters: {"qqfile"=>"Foo.png"}
{"qqfile"=>"Foo.png", "action"=>"ul_file", "controller"=>"upload_files"}

но я не могу использовать это как файл и делать что-то вроде

thefile = params[:qqfile]

foo = thefile.original_filename.slice(thefile.original_filename.rindex("."), thefile.original_filename.length).downcase

что мне нужно сделать, чтобы этот скрипт работал с Ruby on Rails?

Спасибо.

///////// Обновлено

Так выглядит JS



$(document).ready(function(){
    var uploader = new qq.FileUploader({
        // pass the dom node (ex. $(selector)[0] for jQuery users)
        element: $('#file-uploader')[0],
        // path to server-side upload script
        action: '/NzzT/upload_files/ul_file'
    });

});


Ответы [ 2 ]

1 голос
/ 11 января 2012

Вот хорошее решение с использованием CarrierWave:

https://github.com/jnicklas/carrierwave/wiki/How-to%3A-Upload-from-a-string-in-Rails-3 https://groups.google.com/forum/#!topic/carrierwave/KBn2WmrwRAs

Синтаксис выглядит следующим образом и работает как шарм:

file = CarrierwaveStringIO.new(params[:qqfile], request.raw_post)
1 голос
/ 14 апреля 2011

мое решение опубликовано в этот комментарий

Я пишу QqFile для удобной загрузки.С примером скрепки

...