Я использую jquery-file-upload для загрузки файлов.
После завершения загрузки файлов я хочу перенаправить на путь редактирования загруженного документа.
Я использую javascript для отправки файла:
return data.submit();
После завершения загрузки файла, как я могу перенаправить на edit_document_path, я пробовал следующий код:
$('#fileupload')
.bind('fileuploadstop', function (e, data) {
window.location.href = "#{edit_document_path(@document)}";
})
Есть ли способ сохранить или вернуть идентификатор (или, что еще лучше, сам @document) загруженного документа, чтобы я мог перенаправить через js?
РЕДАКТИРОВАТЬ
У меня есть js прямо в файле html.haml
%script(type="text/javascript")
$('#new_document').fileupload({
dataType: 'json',
add: function (e, data) {
jqXHR = data.submit()
},
done: function (e, data) {
window.location = json.url
},
progress: function (e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
$('.bar').css('width', progress + '%');
}
});
и вот мой контроллер:
def upload
@document = Document.new(params[:document])
respond_to do |format|
format.json { render json: { url: edit_document_path(@document) } }
end
end
Однако ответ JSON, похоже, не работает, поскольку страница не перенаправляется, что я делаю неправильно?
Спасибо