Не отследил, к сожалению, точно, но с определённого момента у некоторых пользователей перестал выводиться город, указанный при регистрации, в одноимённом поле, в профиле пользователя. При том, что поле обязательное для заполнения. Подумал, неужели кто-то научился обходить заполнение этого поля?!
Заглянул в базу. Выяснил, что в таблице "users" наряду со стобцом "city" появился "city_cache". У последних зарегистрированных он ("city_cache") заполняется названием города, цифровое значение которого хранится в "city". У ранее зарегистрированных — NULL, соответственно и в профиле…
Подскажите, пожалуйста (хотелось бы услышать разработчиков), в чём сакральная суть данного атрибута, когда он появился и как безболезненно исправить ситуацию?
Обычно это делается для того, чтобы постоянно не спрашивать у базы данных, что за название города имеющего id = ???..в чём сакральная суть данного атрибута
появился он в стародавние времена, примерно при очередном обновлении на 2.5.0.когда он появился
Зайти админом в профили этих пользователей и пересохранить их профили.как безболезненно исправить ситуацию?
принял, как рабочий вариант. При этом, всё-таки способ не совсем безболезненный, с учётом количества уже зарегистрированных пользователей. Может, есть возможность выполнить запрос в БД или скриптик простой запустить, чтобы прошёлся по всем записям.Зайти админом в профили этих пользователей и пересохранить их профили
Ещё обратил внимание, что у некоторых ранее зарегистрированных поле город отображается должным образом. Первая мысль была, что они сами исправили. Но отпала, когда посмотрел на дату последнего посещения. В общем, пока не выявил закономерность, почему у одних пользователей поле обновилось (если обновлялось), а у других — нет. Есть у кого какие мысли?
Получается, что "обратная совместимость" с младшими версиями не всегда достигается? И при обновлении может "сломаться" не только шаблон с правками "от руки". Или этот вопрос должен был как-то решиться в процессе обновления и просто "что-то пошло не так"?
Народ! А у вас как? Всё отображается корректно? Хочется понять, проблема локальная или более широка?