XF 2.1 Слетают реакции. Как прописать `reaction_score`?

Статус
В этой теме нельзя размещать новые ответы.

vadims

Заблокирован
Сообщения
350
Реакции
102
Баллы
185
Есть проблема, если вручную прописать реакции пользователю, в админке, то после "Перестроение реакций" все слетает.
Хотел со старого форума перекинуть так -
Код:
UPDATE `xf_user` SET `reaction_score` = 1234 WHERE `user_id` = 1
Но после "Перестроение реакций" все слетает и нету числа реакций "1234".
Тогда решил в сообщение вставить число реакций, так как форум ищет реакции в сообщениях (как мне кажется).
Код:
UPDATE `xf_post` SET `reaction_score` = 1234 WHERE `user_id` = 1 LIMIT 1
Но после "Перестроение реакций" не чего не меняется.

Как можно прописать рекции чтобы не слетало после "Перестроение реакций"?
(не использовать "Перестроение реакций" не вариант)
 
?. То что у неё 3 колонки минимум это ничего?
Так Вы и подскажите мне, где проблема, почему слетают реакции и если в постах просто прописать их число, то не чего не работает.
 
почему слетают реакции
Странный человек. Ребилд очищает поле таблицы и считает заново. Чтобы правильно перенести - нужно воссоздать таблицу и поля реакций, которые будут соответственно привязаны к xf_post. И вот тогда ребилд будет результативный.
Структуру таблиц не смотрел, пишу на пальцах. По аналогии - делаешь рисунок на стене, а потом сверху клеишь обои и жалуешься что рисунка почему-то хрен видно. Наноси рисунок на обои и клей. Так понятней?

Кстати, сам кейс востребованный, периодически попадаются аналогичные задачи.
 
Последнее редактирование:
Структуру таблиц не смотрел, пишу на пальцах.
Зачем тогда писать или это себе посты набиваем "пустыми" сообщениями?
Внимательно в начале прочтите тему, а после флудите.
Написал же, что привязываю к посту пользоватля число реакций, в посте отображается все, а в профиле пользователя после пересоздания - нет!
Те кто пишут плагины, точно знают как все устроенно и могут подсказать где беда.
 
Последнее редактирование модератором:
?. То что у неё 3 колонки минимум это ничего?

Чтобы правильно перенести - нужно воссоздать таблицу и поля реакций, которые будут соответственно привязаны к xf_post. И вот тогда ребилд будет результативный.
table->addColumn('reaction_score', 'int')->unsigned(false)->setDefault(0); $table->addColumn('reactions', 'blob')->nullable();
$table->addColumn('reaction_users', 'blob');
xf_reaction_content
 
Статус
В этой теме нельзя размещать новые ответы.
Современный облачный хостинг провайдер | Aéza
Назад
Сверху Снизу