Импортированные закладки отсутствуют

Я работаю над тестом импорта из другого программного обеспечения для форумов и столкнулся с проблемой при импорте закладок. В базовом импортере есть функция create_bookmarks, и я передаю в неё значения user_id и post_id. Скрипт не выдаёт ошибок и показывает обычный вывод прогресса:

25 / 25 (100.0%)

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

Вы можете добавить puts после вызова PostActionCreator и посмотреть, создаёт ли он что-либо.

Ах, возможно, я упустил импортеры. Я займусь этим первым делом сегодня (начинаю примерно через час). Между тем вы можете выполнить задачу rake для синхронизации закладок из действий в постах в новую таблицу.

bundle exec rake bookmarks:sync_to_table

Это действие не является деструктивным, и его можно запускать столько раз, сколько потребуется.

Хм. Я посмотрел в таблицу post_actions, и она тоже пуста. Использует ли код импорта устаревший процесс? Я думал просто выполнить прямой запрос на вставку в базу данных, но сначала попробую копнуть чуть глубже.

Я был довольно удивлен, увидев, что в импортерах есть поддержка!

Я проверил, и действительно пропустил create_bookmarks в базовом скрипте импорта. Сегодня я создам PR, чтобы он создавал закладки в новой таблице. Однако очень странно, что у вас не создаются закладки PostAction.

@Ghan Я объединил PR FIX: Change base importer to create new Bookmark records by martin-brennan · Pull Request #9603 · discourse/discourse · GitHub, который теперь создаёт новые закладки. Пожалуйста, проверьте и дайте знать, работает ли это у вас!

Я обновился сегодня утром, и закладки теперь импортируются! Спасибо за быстрое исправление!