Возможно, лучше всего сохранять только те значения, которые вы хотите сохранить.Вы должны создать сущности для хранения ваших значений.
У вас может быть одна сущность для любых значений формы с отношением один ко многим к другой сущности, которая представляет собой простую пару ключ / значение для значений записи, которыеу вас есть
этот учебник , который я использовал для изучения базовых CoreData.Он проведет вас через создание сущностей и установление отношений между ними
РЕДАКТИРОВАНИЕ : В ответ на ваш вопрос в комментариях:
Я бы предположил, что у вас есть модели (классы данных/ лица или как вы их называете) представлять «пост».Я не видел ваш код, и я не уверен, как вы его написали, но так я бы его реализовал.
1) Иметь форму, которая получает данные от пользователя.(и модель, представляющую эту форму)
2) Пользователь нажимает кнопку «Отправить», которая передает эти данные (как модель) в сетевую службу, которая преобразует их в FormDataRequest и пытается отправить.
3) Если происходит сбой сети (или пользователь просто нажимает «Сохранить черновик»), модель затем отправляется в службу данных, которая сохраняет модель в CoreData.(создает объект CoreData, который должен быть похож, если не совпадает с моделью, копирует значения и сохраняет объект)
как (наполовину) псевдокод: P
class MyFormViewController{
// Obviously declared in the header file ;)
TextField name;
TextField dob;
...
// View Stuff dealing with displaying the form
...
function getModelForFieldValues() {
Model m;
m.name = name.Text;
m.dob = dob.Text;
return m;
}
function send_buttonPress() {
Model myModel = getModelForFieldValues();
BOOL success = NetworkService.send(myModel); //Attempts to send the data over the network
if(!success) {
DataService.save(myModel); //Saves the model data to CoreData
}
}
function saveDraft_buttonPress() {
Model myModel = getModelForFieldValues();
DataService.save(myModel);
}
}