Я разрабатываю новое приложение с Swift 5.1 и основными данными для хранения.
У меня есть модель данных отношений Один-ко-многим, в которой у меня есть 2 сущности, а именно: Урок и Ученик. Урок <----- >> Студент. У меня есть функция для хранения, когда пользователь вводит новый урок. Работает идеально, как талисман.
Позже я изменил, и теперь я пытаюсь добавить учеников (заполнить данные) к уроку, когда пользователь отправляет новый урок. У меня есть StudentsArray из 5 объектов для заполнения {name: 'Some Name', enrollDate: Date}.
func addNewLesson(name: String) {
let lesson = Lesson(context: self.moc)
lesson.name = name
let studentArray: [StudentModel] = [Pretend theres object]
let student = Student(context: self.moc)
do {
try self.moc.save()
} catch let error as NSError {
print(error)
}
}
Я пытался ...
- Чтобы добавить
for loop
после сохранения урока (сделать код) в приведенном выше коде. Это не работает и всегда сохраняет последний объект в основных данных.
for item in studentArray {
chapter.name = item.name
lesson.addToStudent(chapter)
do {
try self.moc.save()
} catch let error as NSError {
// TODO: Replace print statement
print(error)
}
}
Перед сохранением урока я использую цикл for, который не работает и всегда добавляет последний объект в массив к объекту, и я вижу только один сохраненный студент.
Я ожидаю сохранитьвсе учащиеся в массиве (для начального заполнения данных) каждый раз, когда добавляется урок и вызывается функция addLesson.
Пожалуйста, ведите меня. Я не знаю, как заполнить данные. Должен ли я вызывать другую функцию для заполнения студентов после добавления нового урока, или я могу заполнять данные при добавлении нового урока?
Буду признателен за помощь.