Ruby on rails 通过ajax的datatables不接受嵌套json作为正确数据

Ruby on rails 通过ajax的datatables不接受嵌套json作为正确数据,ruby-on-rails,ruby-on-rails-3,datatables,Ruby On Rails,Ruby On Rails 3,Datatables,我正在尝试实现一个更高级的Railscast版本,涵盖数据表 当控制器提供WaresDatatable.new(view\u context)响应时,我能够通过ajax使表工作,这是一个胜利 但是,当我尝试扩展我正在做的事情并嵌套json以便datatables和其他函数可以使用json响应时,ajax datatable不再加载数据 我对这一点还比较陌生,有一段时间我一直在为这个看似微不足道的问题绞尽脑汁 控制器: respond_to do |format| format.html #

我正在尝试实现一个更高级的Railscast版本,涵盖数据表

当控制器提供WaresDatatable.new(view\u context)响应时,我能够通过ajax使表工作,这是一个胜利

但是,当我尝试扩展我正在做的事情并嵌套json以便datatables和其他函数可以使用json响应时,ajax datatable不再加载数据

我对这一点还比较陌生,有一段时间我一直在为这个看似微不足道的问题绞尽脑汁

控制器:

 respond_to do |format|
  format.html # show.html.erb
  #format.json { render :json => @contributor }
format.json { 
                    render :json => {
                        :warestable => WaresDatatable.new(view_context),
                        :contributor => @contributor

                     }
             }      
end
wares_datatable.rb(根据railscasts,在不需要json时工作)

JS.Coffee文件

jQuery ->
  $('#warestable').dataTable
    sPaginationType: "full_numbers"
    bJQueryUI: true
    bProcessing: true
    bServerSide: true
    sAjaxSource: $('#warestable').data('source')
JSON响应

{"warestable":{"sEcho":0,"iTotalRecords":22,"iTotalDisplayRecords":1,"aaData":[["<a href=\"/wares/1\">crap</a>",null,"old","really crappy condition","<a href=\"/wares/1\">View</a>"]]},"contributor":{"ad_board":true,"avatar_content_type":"image/jpeg","avatar_file_name":"success.jpg","avatar_file_size":90652,"avatar_updated_at":"2013-05-04T01:54:52Z","created_at":"2013-05-01T05:19:51Z","email":"jack@jack.com","first_name":"jack","id":1,"last_name":"frost","name":null,"ptrgrph_id":null,"resume_content_type":"image/png","resume_file_name":"Argentina.png","resume_file_size":42260,"resume_updated_at":"2013-05-04T03:17:50Z","searchable":"jack frost jack@jack.com bu","selfdescription":"<p><span style=\"font-family:comic sans ms,cursive\">This is my new website info</span></p>\r\n\r\n<p>&nbsp;</p>\r\n\r\n<p>&nbsp;</p>\r\n\r\n<p><span style=\"font-family:comic sans ms,cursive\">Hhaahaha</span></p>\r\n","university":"bu","updated_at":"2013-05-08T01:58:58Z","user_id":4,"ware_id":null}}
{“warestable”:{“sEcho”:0,“iTotalRecords”:22,“iTotalDisplayRecords”:1,“aaData”:[[”,null,“old”,“really cropy condition”,“]},“contributor”:{“ad_board”:true,“avatar_内容类型”:“image/jpeg”,“avatar_文件名”:“success.jpg”,“avatar_文件大小”:90652,“avatar_更新时间”:“2013-05-04T01:54:52Z”,“创建时间”:“电子邮件”2013-05-T05:19:51Z:”"jack@jack.com“,”姓名“:”jack“,”id“:”1“,”姓氏“:”frost“,”姓名“:”null“,”简历内容“:”类型“,”图像/png“,”简历文件“:”Agentary.png“,”简历文件大小“:”42260,“简历更新地址::”2013-05-04T03:17:50Z“,”可搜索“:”jack frostjack@jack.com“自我描述”:这是我的新网站信息

\r\n\r\n\r\n\r\n\r\n\r\nhhaaha

\r\n,“大学”:“bu”,“更新地址”:“2013-05-08T01:58:58Z”,“用户id”:4,“软件id”:null}

Datatables能够处理嵌套资源,所以我很确定这只是我自己。如果有人能为我指出正确的方向,我将不胜感激。

我知道这是一个老问题,但请留意

它允许您为而不是aaData设置自定义属性,但我还没有找到一种方法来告诉datatables在别处查找
sEcho

{"warestable":{"sEcho":0,"iTotalRecords":22,"iTotalDisplayRecords":1,"aaData":[["<a href=\"/wares/1\">crap</a>",null,"old","really crappy condition","<a href=\"/wares/1\">View</a>"]]},"contributor":{"ad_board":true,"avatar_content_type":"image/jpeg","avatar_file_name":"success.jpg","avatar_file_size":90652,"avatar_updated_at":"2013-05-04T01:54:52Z","created_at":"2013-05-01T05:19:51Z","email":"jack@jack.com","first_name":"jack","id":1,"last_name":"frost","name":null,"ptrgrph_id":null,"resume_content_type":"image/png","resume_file_name":"Argentina.png","resume_file_size":42260,"resume_updated_at":"2013-05-04T03:17:50Z","searchable":"jack frost jack@jack.com bu","selfdescription":"<p><span style=\"font-family:comic sans ms,cursive\">This is my new website info</span></p>\r\n\r\n<p>&nbsp;</p>\r\n\r\n<p>&nbsp;</p>\r\n\r\n<p><span style=\"font-family:comic sans ms,cursive\">Hhaahaha</span></p>\r\n","university":"bu","updated_at":"2013-05-08T01:58:58Z","user_id":4,"ware_id":null}}