Я только начинаю с пользовательского интерфейса Kendo и Angular и пытаюсь использовать Планировщик с базой данных SQL. Проблема в том, что новая запись добавляется в планировщик, я вижу, что запись изначально создается в пользовательском интерфейсе (за новым окном Event), но при нажатии «Сохранить» на событие успешно сохраняется в базе данных, но запись больше не находится в пользовательском интерфейсе, и единственный способ показать ее - это перезагрузить данные, которые теряют текущие настройки представления.kendo ui scheduler not display new entries
Я делаю/не делаю что-то глупое или есть способ показать новое событие, не выполняя другое полное чтение данных?
var schedSource = new kendo.data.SchedulerDataSource({
schema: {
model: {
id:"taskId",
fields: {
taskId: {
from: "id",
type: "number"
},
start: { type: "date", from: "start" },
end: { type: "date", from: "end" },
title: { from: "title", defaultValue: "No title", validation: { required: true } },
}
}
},
transport: {
read: {
url: '/sched',
dataType: 'json',
cache: false
},
update : {
url: '/sched/update',
dataType: 'json'
},
create: {
url: '/schedCreate',
dataType: "json"
},
destroy: {
url: '/schedDelete',
dataType: "json"
},
parameterMap: function (options, operation) {
if (operation != "read") {
var d = new Date(options.start);
options.start = kendo.toString(new Date(d), "yyyy-MM-ddTHH:mm:ss");
console.log(options.start);
var d = new Date(options.end);
options.end = kendo.toString(new Date(d), "yyyy-MM-ddTHH:mm:ss");
}
},
},
});
$scope.schOptions.dataSource = schedSource;
с помощью K-опции для планировщика
<body ng-controller="schedulCtrl">
<div kendo-scheduler k-date="today" k-options="schOptions"></div>
</body>
Ваш обработчик создания на сервере, возвращающий th созданная модель? –
Привет Ларс, спасибо за ответ. Да это оно. Я только что работал над этим, захватив событие сохранения, а затем используя Sync для создания datasource.read. не уверен, что это лучший способ сделать это, но, похоже, работает нормально – user3181505
Привет, помог ли мой ответ решить вашу проблему? Если да, не могли бы вы пометить мой ответ в качестве ответа? Таким образом, люди, которые могут найти вопрос с помощью Google, могут получить больше уверенности в правильности ответа. Спасибо заранее. –