モデルの代わりにデータを使用するようにスキーマを変更すると、Kendo Ui グリッドが更新されない

StackOverflow https://stackoverflow.com//questions/22074715

質問

この例 jsfiddle にクローンした kendo のサイトからは問題なく動作します。 http://jsfiddle.net/destan/xXc82/

しかし、この部分を変更すると、次のようになります。

schema: {
  model: {
    id: "ProductID",
    fields: {
      ProductID: { editable: false, nullable: true },
      ProductName: { validation: { required: true } },
      UnitPrice: { type: "number", validation: { required: true, min: 1} },
      Discontinued: { type: "boolean" },
      UnitsInStock: { type: "number", validation: { min: 0, required: true } }
    }
  }
}

このような:(更新されたフィドル: http://jsfiddle.net/destan/Wqd4t/1/)

schema: {
  data: function(response){
    return response
  }
}

行を編集した後に保存ボタンをクリックしても、グリッドは更新されません。 saveChanges イベントがトリガーされます。

で観察できます network 開発コンソールのタブ。最初の例では、編集後に [保存] ボタンをクリックするとサーバーにリクエストが発生しますが、2 番目の例ではリクエストは行われません。

理由はありますか?

役に立ちましたか?

解決

コードの問題は定義されていないことです schema.model.id どのデータソースがそれを必要とするか create,update,delete. 。したがって、修正されたコードは次のとおりです。

schema: {
  model: {
    id: "ProductID"
  },
  data: function(response){
    return response;
  }
}

フィドル: http://jsfiddle.net/Wqd4t/2/

参考文献: kendo.data.DataSource , kendo.data.Model

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top