Rails 3 - как send_file в ответ на удаленную форму в рельсах?

У меня есть эта форма купона

    <%form_for(:download,:download,:url=>{:controller=>"coupons",:action=>"verifycoupon"},:remote=>true) do |f| %>
    <%=text_field :download,:code%>
    <%=f.submit "verify"%>
    <%end%>

, и после проверки кода действия контроллера я получаю подтверждение вроде:

render :update do |page|
    page.alert "OK"
end

Теперь я хочу отправить файл в браузер с помощью инструкции send_file , но похоже, что ничего не происходит

send_file("/path/to/my/file.extension")

, а в журнале, который я вижу,

"Sent file /path/to/my/file.extension (0.1ms)"

мне было интересно, есть ли что-то вроде

render :update do |page|
   page.send_file("/path/to/my/file.extension")
end

#### Update #######

действие моего Контроллера выглядит примерно так:

def verifycoupon
   code = Code.find(params[:download][:code])
   if code
     if code.is_active?
     render :update do |page|
        page.alert "ok"
     end
       send_file("/path/to/my/file.extension")
     else
       render :update do |page|
          page.alert "this code has already been used"
       end
     end
   else
   render :update do |page|
     page.alert "Code does't exist"
   end
   end
end
5
задан Mr_Nizzle 16 May 2011 в 15:48
поделиться