У меня есть приложение, которое отображает таблицу данных с помощью кнопки публикации. Вы можете выбрать строки, а затем щелкнуть, чтобы опубликовать их. Выбранные данные упаковываются в необходимый формат json и отправляются через ajax для быстрой проверки, что ни один из данных не имеет никаких зависимостей. Если есть зависимости, он возвращает сообщение об ошибке и список этих зависимостей. Затем вы должны выбрать зависимости плюс родительский элемент и попытаться опубликовать его снова. Проблема заключается в том, что после обработки данных один раз в правильный формат json для отправки для первого вызова данные тогда кажутся непригодными и отсутствующими в модели вообще ... Я могу сделать вызов один раз, но не снова. Любая помощь высоко ценится! Вот мой контроллер:Restore Ember Data
export default Ember.ArrayController.extend({
actions: {
publishSubmit: function(){
var checkedItems = this.get('model').filterBy('isChecked', true);
if(checkedItems.length > 0){
this.send('dependencyCheck', checkedItems);
}
else{
this.announce.error('No items selected for publish.');
}
},
dependencyCheck: function(items){
var _this = this, data = [];
items.forEach(function(item){
delete item._data.isChecked;
delete item._data.sortByDate;
item._data.publisherId = item._data.id;
delete item._data.id;
item._data.updatedDate = null;
data.push(item._data);
});
//data formating(required)
data = _this.capitalizeAll(data);
data = JSON.stringify(data);
console.log(data);
Ember.$.ajax({
type: 'POST',
dataType: 'json',
contentType: 'application/json',
beforeSend : function(xhr) {
xhr.setRequestHeader("Token", sessionStorage.getItem('authToken'));
},
url: config.host + '/AssessmentPublishService/DependentPublishableItems',
data: data
}).then(function(dependencies){
var processDependencies = _this.processResponseData(dependencies);
if(dependencies.Status === "Success"){
console.log("ProccessD");
console.log(processDependencies);
return JSON.stringify(processDependencies);
}
else{
return this.announce.error('Failed to process.');
}
});
}
}
}
Вы абсолютно прибивали его. Я не понимаю, что я делаю, манипулируя личными данными. после изменения я постоянно изменял данные. поэтому я сделал так, как вы предполагали, и поместил его по частям в новую структуру. я не совсем понимаю подход к карте/сериализации. это может быть выше моего уровня оплаты. большое спасибо за вашу помощь! – campatsky