kendoGridをバックボーンビューに統合しようとしています。これは私のビューコードです。
App.Views.UsersManager = Backbone.View.extend({
tagName: 'section',
id: 'users-manager',
className: 'tile',
template: Handlebars.compile($('#profile-usersManager-template').html()),
render: function () {
console.log('usersManager.render -> collection', this.collection);
var self = this;
this.$el.html(this.template());
var dataSource = new kendo.data.DataSource({
transport: {
read: {
url: '/users',
type: 'GET',
dataType: 'json'
},
update: {
url: '/users',
type: 'PUT',
dataType: 'json'
}
},
schema: {
data: 'data'
},
batch: true
});
this.$('table.users-manager').kendoGrid({
scrollable: false,
sortable: true,
dataSource: dataSource,
toolbar: ["save"],
editable: true,
navigatable: true,
// filterable: true,
});
return this;
}
});
ビューは正しくレンダリングされ、kendoGridはSlimPHPフレームワークからユーザーデータを正しく取得しますが、グリッドの要素を変更して「ツールバー:["保存"]」が提供する[変更を保存]ボタンを押すと、何も表示されません私のfirebugコンソールでも起こります...サーバー通信はまったくありません。
私は剣道(そしてバックボーンも)の開発に不慣れです、多分私は構文で何かを失敗していますか?:立ち往生:
Atanas Korchevが回答した後に更新します 。これは、更新された私のデータソースです。
var dataSource = new kendo.data.DataSource({
transport: {
read: {
url: '/users',
type: 'GET',
dataType: 'json'
},
update: {
url: '/users',
type: 'PUT',
dataType: 'json'
}
},
schema: {
data: 'data',
model: {
id: 'id',
fields: {
email: {},
name: {},
surname: {},
rank: {},
type: {}
}
}
},
batch: true
});
それは私の問題を解決しません、私は私のphpコードが実際にそのように見えることに気づきたいです:
$app->put('/users', function () use ($app, $db) {
exit('put ok');
});
クライアント/サーバー通信が機能するかどうかを確認するだけです...エラーになることはわかっていますが、[変更を保存]ボタンにイベントがないなど、ファイアバグエラーも表示されません...(試してみますデニスロンゴの提案..しかし、私は解決策だとは思わない...)
私の悪い英語でごめんなさい