У меня есть объект для «листинга», который имеет такие атрибуты, как идентификатор, имя, описание и т. д., которые можно загрузить с помощью метода load($id).
У него также есть некоторые дополнительные атрибуты. Например, несколько продуктов (это отдельный объект). Чтобы повысить производительность, я загружаю их, когда вы пытаетесь получить к ним доступ с помощью listing->getProducts().
Теперь мне нужен метод сохранения в списке, чтобы сохранять значения обратно в базу данных MySQL. Но я не уверен, как сделать эту экономию продукта экологически чистой.
Лучшим способом было бы добавить метод сохранения к объекту продуктов и вызывать его из объекта списка, но при этом сохраняются только значения. Как обрабатывать добавленные/удаленные продукты? Я думаю, что это должен сделать объект листинга. Но как мне узнать, все ли продукты были удалены или даже не были загружены (потому что к ним не был получен доступ)?
Всеми способами, например, сохранением логического значения загруженные продукты кажутся глупым решением. У вас есть хорошая идея, как с этим справиться? У меня есть опыт программирования, но я хочу улучшить свою структуру, поскольку, если проекты становятся больше, я всегда получаю массу путаницы в коде.
Подробнее здесь: https://stackoverflow.com/questions/508 ... l-database