Как задать одинаковые категории боковой панели для всех пользователей

@Moin
Здесь механизм донаполнения работает немного иначе, чем можно было бы ожидать. Мы не просто сбрасываем все категории боковой панели у пользователей при обновлении настройки default navigation menu categories. Вот что мы делаем:

  • Если администратор добавляет несколько категорий в настройку, то только эти новые категории добавляются в боковые панели всех пользователей, у которых их ещё не было.
  • Если вы удаляете несколько категорий из настройки, они удаляются из боковых панелей всех пользователей.

Таким образом, донаполнение не принудительно устанавливает состояние настройки для всех пользователей, а вычисляет разницу (дельту) между существующими значениями в настройке и теми, что были недавно добавлены или удалены.

Главная причина такого подхода — сохранение индивидуальных предпочтений пользователей.

Эта логика была внедрена в следующем PR:

Мы рассмотрели два способа достижения одинаковых категорий у всех пользователей:

  1. Добавить все, применить исторически, удалить некоторые, применить исторически.
  2. Удалить все, применить исторически, добавить некоторые, применить исторически.

В недавней попытке реализовать это для крупного сайта вариант 1 не сработал корректно, а вариант 2 — сработал. Поэтому я документировал именно вариант 2.

Если у вас есть время, попробуйте оба способа на группе пользователей, чтобы проверить их работоспособность. Если нужно, я могу написать SQL-запрос для подтверждения, что обновление прошло как ожидалось. Дайте знать, что вы думаете.

1 лайк