Я пытаюсь выполнить импорт с помощью массового импортера vBulletin. Мне удалось настроить его так, чтобы он в основном справлялся с задачей. Пользователи и сообщения были созданы, но темы не создаются.
Данные, передаваемые в create_topics(topics), выглядят верно. Данные в processed в base.rb:create_records также корректны (поле skipped не установлено). Однако темы не создаются.
Вот ошибка:
ERROR: null value in column "pinned_globally" of relation "topics" violates not-null constraint
Но если тема не закреплена глобально, какое значение должно быть у этого поля? Я пытаюсь закомментировать это поле в TOPIC_COLUMNS в файле base.rb.
РЕДАКТИРОВАНИЕ: Думаю, это может помочь, но узнаю точно не скоро:
create_topics(topics) do |row|
created_at = Time.zone.at(row[5])
t = {
imported_id: row[0],
title: normalize_text(row[1]),
category_id: category_id_from_imported_id(row[2]),
user_id: user_id_from_imported_id(row[3]),
closed: row[4] == 0,
created_at: created_at,
views: row[6] || 0,
visible: row[7] == 1,
pinned_globally: row[8] == 1 # <============== JP добавил это:
}
t[:pinned_at] = created_at if row[8] == 1
t
end