Мое приложение должно выполнять довольно трудоемкую операцию только при первом действии 'show' страницы.У меня есть определенный макет в app/views/layouts/application.html.erb
, который я хотел бы показать с самой первой секунды, чтобы внутри этого макета находился счетчик и информационное сообщение, позволяющее пользователю знать, что для завершения операции потребуется некоторое время.После того, как эта операция закончена, я хотел бы заменить это сообщение реальным контентом, если это возможно, изменив его через AJAX, но я не возражал бы просто обновить страницу на данный момент.
У меня есть это вВ моем шоу-действии дорогостоящим процессом является 'load_suggestions' (около 5 секунд).
respond_to do |format|
format.html do
if @issue.suggestions == []
load_suggestions
end
end
format.xml { render :xml => @issue }
format.js
end
Я считаю, что этот пост - Показывать экран загрузки при выполнении задачи в Rails 3 - имеет некоторые довольноинтересная информация для того, что я пытаюсь сделать.По сути, я бы включил эту функцию JavaScript в views/issues/show.js.erb
.Проблема в том, что если я включу его туда, он будет вызываться каждый раз, и это не то, что я намереваюсь сделать.
Любые предложения, подсказки, руководство?