0

モデルをロードしてダーティデータをストアに追加しようとしていますが、実際のモデルをロードしてからsetDataをストアにロードできないようです...

これを行う:

var model = Ext.ModelMgr.getModel("AT.model.Booking");

戻り値:

function () {
    return this.constructor.apply(this, arguments);
}

これはまったく正しくないようです。私はこれについてのスレッドを見つけました。 http://www.sencha.com/forum/showthread.php?177658-How-to-get-a-single-model

次のバグレポートには、次のバージョンで修正する必要があると記載されていますが、修正されていないようです...バグレポートに記載されている修正を統合する方法がわかりません...

4

3 に答える 3

1

これが達成したいことかどうかはわかりませんが、単一のレコードを保存したい場合は、モデルをDBから取得してから、save()を呼び出します。

var model = Ext.ModelManager.getModel('AT.model.Booking');

model.load(id, {
  scope: this,

  success: function(record) {
    if (profile.dirty) {
      profile.save();
    }
  },

  failure: function() {
    console.log('Something went wrong.');
  },
});
于 2012-07-02T15:39:28.833 に答える
0

私が間違っている場合は訂正してください。ただし、メソッドに渡す引数getModelは、id取得するモデルの引数です。モデルのクラス名を渡しているようです。

実際AT.model.Bookingidモデルインスタンスの場合を除きます。これは私には奇妙に思えますが、それは私の仕事ではありません:P

于 2012-04-07T19:43:53.483 に答える
0

これは、単一のモデルをロードする方法です。

var thing;
AT.model.Booking.load(thingId, {
  success: function(rec) { 
    thing = rec; 
  } 
});

落とし穴は、モデルの「構成」セクションでプロキシ設定を設定する必要があることです。この構文は、「getmodel」全体よりも少し簡単です。

于 2012-09-08T09:58:33.640 に答える