2012-02-08 10 views
0

'user'モデルと 'users'コントローラを持つ単純なRails 3 JSON APIを作成しました。しかし、API自体は問題なく動作しています...Rails 3 - KendoUI - JSONオブジェクトへのアクセスに問題 - Uncaught ReferenceError

私は剣道のUIデータソースを使ってグリッドにデータを設定しようとしていますが、問題が発生しています。

私はJSONデータをサーバから戻って来ていることがわかりますクロームネットワークツールを使用し:ここで

[{"user":{"created_at":"2012-02-08T17:33:27Z","first_name":"Angelina","id":1,"last_name":"Jolie","password":"","updated_at":"2012-02-08T17:33:27Z","user_name":""}},{"user":{"created_at":"2012-02-08T17:34:50Z","first_name":"Milla","id":2,"last_name":"Jovovich","password":"","updated_at":"2012-02-08T17:34:50Z","user_name":""}}] 

は、グリッドとデータソースを作成するために使用されるJavascriptのです:

$(document).ready(function(){ 

    var sharableDataSource = new kendo.data.DataSource({ 
     transport: { 
      read: { 
       url: "/users", 
       dataType: "json" 

      } 
     }   
    }); 


    $("#grid").kendoGrid({ 
     dataSource: sharableDataSource, 
      columns: [ 
      { 
       title: "First Name", 
       field:"first_name" 
      }, 

      { 
       title: "Last Name", 
       field: "last_name"    
      }] 
    });   

}); 

enter image description here 0123:

グリッドの定義は、グリッドがレンダリングするとき、それは私がグリッドに指定された「タイトル」を表示しているので、作業をしているように見えます

しかし、わかりますように、データは表示されません。 は、と私は「first_nameの」フィールドために捕捉されないにReferenceErrorを取得しています。これを引き起こす可能性のあるものに

enter image description here

任意の考え?

+1

Railsの初期化プロセス中にこの設定を編集する必要があると思います: 'ActiveRecord.Base.include_root_in_json = false' –

+0

あなたはあなたです天才。私はconfig/environment.rbファイルに入れて、今は動作します。なぜ、それはわかりません。あなたが回答としてあなたのコメントを提出できるなら、私はそれを解決策としてマークします。ありがとう! – PhillipKregg

答えて

1

は、私はあなたのRailsの初期化処理中に、この設定を編集する必要があると思う:

ActiveRecord.Base.include_root_in_json = false

更新:デフォルトのRailsで、それが持つJSONレスポンスだレンダリング、それは助けうれしい... :)これはされているため、含まれるルート要素。

+0

ああ、大丈夫です。再度、感謝します! – PhillipKregg

関連する問題