Спасибо за этот совет, Джей. Я действительно думал о создании плагина, но также считал, что это можно сделать через консоль Rails, как и для различных массовых операций. Однако я не знаком с Rails, и в любом случае это, похоже, требует вызова встроенных функций. Это создало бы ту же проблему перезаписи, если только эти задачи не будут включены в ядро.
До сих пор я справлялся с помощью Data Explorer для операций удаления и (очень осторожного) psql для операций добавления, но мне гораздо больше хотелось бы действовать по правилам, какова бы ни была судьба.
Наверное, мне стоит чётко объяснить, что именно я делаю.
Я управляю форумом, который сейчас находится в своей третьей или четвёртой итерации: до этого он работал на Phorum, затем на phpBB, а ещё раньше — на какой-то другой платформе. Тематика узкая, аудитория небольшая, но контент переносился при каждом переходе и представляет собой значительный объём институциональных знаний. Discourse с его возможностями категоризации, тегирования и интерфейса казался отличным решением для улучшения доступности знаний.
Поэтому я перенёс форум, который в предыдущих версиях никогда не был категоризирован или размечен тегами. Вместо того чтобы вручную просматривать 100 тысяч сообщений в 8 тысячах тем, я использовал программное обеспечение для обработки естественного языка, чтобы помочь с категоризацией и тегированием. Затем я обновляю таблицы topics, categories и topic_tag напрямую, будучи, как я уже сказал, очень осторожным.
Процесс ещё продолжается, но у меня уже есть стабильный рабочий процесс, и я могу легко завершить работу с помощью имеющихся инструментов. Вперёд, однако, будут регулярные периодические обновления для включения новых категорий и тегов, которые могут отличаться от предыдущих данных. Как видите, необходимость в этом очевидна.
Очевидно, что Data Explorer обеспечивает только односторонний поток данных, но он оказался очень удобным. Я могу обойти ограничение по размеру, выполняя операции пакетами, а теперь ещё и повысив лимит настроек, так что спасибо за это.