Можно ли использовать ruby-код в файлах RJS?
Например, файл destroy.js.rjs
if @template == "viewer"
page["viewing_registry_#{@viewer_registry.id}"].replace_html :partial => "shared/request_viewer_link"
else
page["viewer_#{@viewer.id}"].visual_effect :DropOut, :duration => 2.0
flash.discard
end
Это файл RJS, вызываемый из действия уничтожения, которое имеет
def destroy
@viewer = Viewer.find(params[:id])
@viewer_registry = Registry.find(@viewer.registry_id)
@viewer.destroy
flash[:notice] = "Viewer deleted"
@template = params[:template]
params[:template] = nil
respond_to do |format|
format.html { redirect_to registry_path(@viewer_registry) }
format.js
end
end
Таким образом, при вызове AJAX файл RJS используется для ответа, и он дает другой ответ в зависимости от того, какой шаблон вызывает действие уничтожения.
В данный момент выполняется вызов AJAX, запись уничтожается, а дальше ничего не происходит, вне зависимости от того, какой шаблон вызывал действие уничтожения. Поэтому мне интересно, не работает ли он просто потому, что я не могу использовать рубиновый код в файле RJS. Любые идеи? Или я делаю все неправильно?
Спасибо!