У меня есть объект, у которого есть атрибуты, которые заполняются из 5 контроллеров представления.
Приложение представляет собой анкету на основе подробной формы с 5 вопросами, и каждый из 5 контроллеров представления состоит из одного вопроса и своего набора вариантов ответов. В первых 4-х у пользователя есть вопросы с несколькими вариантами ответов. В последнем вопросе пользователь может выбрать несколько значений из набора параметров.
Я сохранил сущность для каждого контроллера представления, чтобы отображать параметры для этого контроллера представления.
Чтобы фиксировать ответы пользователя, я создал объект с именем Answer со строковыми атрибутами для ответа на первые 4 вопроса и отношениями с пятым объектом, чтобы я мог зафиксировать набор вариантов ответов, выбранных пользователем для 5-го вопроса.
Мне также нужно сохранять выбор пользователя, когда пользователь переходит от 1-го вопроса к 2-му и 3-му и так далее, а не за один раз, когда пользователь ответил на все вопросы.
Кроме того, пользователь может отказаться от ответов, если откроет экран первого вопроса.
Как лучше всего этого добиться?
Искал следующие варианты -
- Перед переходом к первому контроллеру представления вопроса создайте запись объекта ответа. Также контекст управляемого объекта (moc). Затем я сохраняю свойство moc в каждом из 5 контроллеров представления, а затем передаю moc, созданный до перехода к первому контроллеру, с первого контроллера на пятый контроллер вместе с управляемым объектом Answer. Сохраняйте этот moc всякий раз, когда пользователь переходит от одного вопроса к другому.
- Создайте тип DataCollector класса Singleton, где у меня есть метод init для создания записи объекта Answer и методы для создания moc и сохранения в moc. Затем из каждого вопроса я обращаюсь к этому управляемому объекту Answer, а также использую тот же moc.
Пожалуйста посоветуй.