С новой базой данных, запущенной bundle exec rails db:structure:load
или rails db:create
или rails db:migrate
или bin/rails db:setup
throws
rails aborted!
ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: relation "clients"
does not exist
LINE 8: WHERE a.attrelid = '"clients"'::regclass
...etc ^
Я был бы счастлив, просто зная, как это отладить. В какой-то момент некоторый код вызывает модель Client, но он невидим. Что может потребовать, чтобы таблица клиентов существовала до загрузки?
редактирует:
Нет миграций, нет. Приложение отлично загружается локально, где есть база данных: это происходит сначала в CI, где оно загружается с нуля.
Вот трассировка стека https://gist.github.com/EmmaB/01a9322ab66f258a5ebd6883a441251f, показывающая другую отсутствующую таблицу после того, как я закомментировал следующий код в инициализаторе Flipper:
Client::Identifiers::IDENTIFER_ID_MAPPING.each do |client_identifier, client_id|
Flipper.register(client_identifier) do |actor|
actor&.client_id == client_id
end
end
Но этот код инициализатора не должен запускаться при загрузке, когда вы загружаете структуру, верно? И действительно, не работает в Rails 4.2.10 (обновление с версии 5.2).