Migrate a phpBB3 forum to Discourse

Во втором испытании Discourse пропускает загрузки, так как они уже существуют в таблице uploads. Discourse избегает перезаписи существующих загрузок, если это явно не указано.

Вы можете попробовать добавить следующий фрагмент кода в attachment_importer.rb (discourse/script/import_scripts/phpbb3/importers/attachment_importer.rb at main · discourse/discourse · GitHub) перед вызовом @uploader.create_upload. Это обеспечит удаление существующей загрузки с тем же именем файла в первую очередь, что заставит Discourse выполнить повторную загрузку.

existing_upload = Upload.find_by(original_filename: filename)
if existing_upload
  existing_upload.destroy
  puts "Удалена существующая загрузка: #{filename}"
end

upload = @uploader.create_upload(user_id, path, filename)
4 лайка