0

datagrid の外部プラグインを使用しています。json オブジェクトを外部プラグインに渡す必要があります。

モデルにアクセスしてデータ(jsonオブジェクト)を収集しようとしても、オブジェクトではなくクラスであるため、何も起こりません。

ここにコードをリストしました:

ルーター:

        Grid.Router.map(function () {
      this.resource('mainview', { path: '/' });
        this.resource("modal", function(){
          this.route("new", {path:"/new"});
          this.route("edit", {path: "/:contact_id" });
        });           
    });  

    Grid.MainviewRoute = Ember.Route.extend({
          model: function () {
            return Grid.ModalModel.find();
          }
        });

    Grid.GriddataRoute = Ember.Route.extend({
          model: function () {
                return Grid.ModalModel.find();
              }         
}); 

Model.js :

    Grid.ModalModel =  DS.Model.extend({
    fname: DS.attr('string'),
    lname: DS.attr('string'),
    email: DS.attr('string'),
    contactno: DS.attr('string'),
    gendertype: DS.attr('boolean'),
    contactype: DS.attr('number')
});

Grid.ModalModel.FIXTURES = [
                       {
                         id: 1,
                         fname: "ghg",
                         lname: "gh",
                         email: "gh",
                         contactno: "4542154",
                         gendertype: true,
                         contactype: 1,
                         action1:"",
                         action2:""
                       },
                       {
                         id: 2,
                         fname: "ghg",
                         lname: "gh",
                         email: "gh",
                         contactno: "4542154",
                         gendertype: true,
                         contactype: 1,
                         action1:"",
                         action2:""
                       },
                       {
                         id: 3,
                         fname: "ghg",
                         lname: "gh",
                         email: "gh",
                         contactno: "4542154",
                         gendertype: true,
                         contactype: 1,
                         action1:"",
                         action2:""
                       }
                      ];

Store.js :

Grid.Store = DS.Store.extend({
                  revision: 11,
                  adapter: 'DS.FixtureAdapter'
                });

コントローラー:

return Grid.ModalModel.find();

ここでは、ビューはコントローラーからデータにアクセスしています。ビュー (didInsertElement) では、外部データグリッド関数を呼び出し、この関数に引数としてデータを渡しています。

次の問題が発生しています:

クラスを使用してデータにアクセスしようとしている場合Grid.ModalModel.find()(console.log から次のデータを参照)

Class {type: function, store: Class, isLoaded: true, isUpdating: true, toString: function…}

私が使用する場合、return this.get('controller.model')私は得ていますundefined

Grid.ModalModel.find()json オブジェクトに変換しようとすると、次のエラーが発生します。

Uncaught TypeError: Converting circular structure to JSON 

ここでモデルにアクセスしてjsonオブジェクト形式でデータを取得する方法を誰か教えてもらえますか?

次のコードを使用しようとしています

Grid.MainviewController = Ember.ArrayController.extend({
    contentChanged: function() {
        this.get('content').forEach(function(item){
          // doing item.toJSON() gives you a plain JSON object
          console.log(item.toJSON({includeId:true}));
        });
      }.observes('content.@each'),
      showmodal: function(){    
            $('#modal').modal(); 
    }
}); 

しかしconsole.log(item.toJSON({includeId:true}));、次のエラーをスローしますUncaught TypeError: Object [object Object] has no method 'toJSON'

4

1 に答える 1