Я добился успеха, переместив этот код в плагин Rails.Это немного больше накладных расходов, но оно работает стабильно, когда я запускаю rails s
и когда я запускаю rake db:migrate
.
, я просто следую за страницей руководства rails по теме ипобежал
rails generate plugin rails_patches --with-generator
и переместил мой файл init.rb в рельсы, как рекомендовано.
~vendor/
`~plugins/
`~rails_patches/
|~lib/
| `-rails_patches.rb
|~rails/
| `-init.rb
|+test/
|-install.rb
|-MIT-LICENSE
|-Rakefile
|-README
`-uninstall.rb
Я поместил этот код в init.rb:
require 'rails_patches'
Я поместил этот код в rails_patches.rb:
ActiveRecord::ConnectionAdapters::PostgreSQLAdapter.class_eval do
def table_exists?(name)
raise 'got here'
end
end
Теперь он ведет себя как яожидается.