【问题标题】:Undefined error when using send_data in rails app在 Rails 应用程序中使用 send_data 时出现未定义错误
【发布时间】:2011-11-09 20:39:31
【问题描述】:

我有一个 ruby​​ on rails 应用程序,它使用其中一个控制器中的 send_data 将二进制数据文件从数据库发送到浏览器。当我不使用 jquery/jquery-mobile 时,此功能非常有效。当我使用 jquery/jquery-mobile 时,当我尝试调用控制器/操作以从数据库下载二进制文件时出现未定义的错误。任何人都可以建议一个解决方法来让它工作吗?谢谢。

附加信息:

rhattachments 控制器代码来调用 send_data:

def show
  @singlerhattachment = Rhattachment.find(params[:id])  
  send_data @singlerhattachment.hdrattach.file_contents,:type =>    
  @singlerhattachment.hdrattach_content_type, :disposition => 'inline'
end

查看调用上述下载的代码:

<%= link_to hattach.file_name,:action => "show", :controller => "rhattachments",:id => hattach.id %> <br />

【问题讨论】:

  • 根据您提供的信息(或缺少信息),我能想到的唯一解决方法是不使用 jQuery。
  • 我添加了更多细节。告诉我您还需要什么其他信息?正如我所说......它在没有 jquery 的情况下运行良好,但我无法删除它,因为我非常依赖 jquery 来实现其他功能......
  • Firebug 告诉我 HTML 格式不正确,它具有未定义的有效内容类型,而不是有效的内容类型。任何想法为什么会发生这种情况? send_data 调用包括内容类型,并且保存文件的表也具有有效的 content_type。如果我在 firebug 中更正 HTML 并刷新浏览器,则会显示文件...关于如何更正此问题的任何想法??

标签: jquery ruby-on-rails jquery-mobile


【解决方案1】:

我遇到了同样的问题,如果我将 data-ajax="false" 添加到它对我有用的链接中。

<%= link_to hattach.file_name,:action => "show", :controller => "rhattachments",:id => hattach.id, :data => { "ajax" => false} %> <br />

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-03-04
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多