Я строю приложение PHP, используя шаблон отображения данных, чтобы отделить мою БД от объектов домена. У меня есть класс mapper, который возвращает объекты сайта на основе данных из БД и принимает существующие объекты сайта для сохранения обратно в БД.
Моя проблема в том, что в системе один (и только один) из всех сайтов должен быть помечен как "основной" сайт, что означает, что если я выберу один из них как основной, я бы хотел автоматически сбрасывает текущий первичный.
Итак, что-то вроде:
$mapper = new Site_Mapper();
$site = $mapper->fetch(2);
$site->isPrimary = true;
$mapper->save($site);
Будет ли как-то в фоновом режиме автоматически сделать это:
$mapper = new Site_Mapper();
$site = $mapper->fetch(1);
$site->isPrimary = false;
$mapper->save($site);
Вопрос в том, куда должна идти логика для автоматического обновления существующего первичного сайта? Это должно произойти после того, как объект был сохранен обратно в БД, а не раньше, если запрос БД не выполнен и у вас нет сайта в качестве основного.
Cheers,
Jack