Ruby on rails Rails数据库迁移错误
我想开始ror,但这个问题似乎无法解决。我知道有很多关于这个数据库错误的线索,但是没有一个解决方案是可行的。我现在整个下午都在论坛上搜索,没有成功 我基本上只是完成课本上的第一个任务,如下所示: 我创建了一个新的RoR项目Windows 10、SQLite3和Ruby on rails Rails数据库迁移错误,ruby-on-rails,database,windows,sqlite3-ruby,Ruby On Rails,Database,Windows,Sqlite3 Ruby,我想开始ror,但这个问题似乎无法解决。我知道有很多关于这个数据库错误的线索,但是没有一个解决方案是可行的。我现在整个下午都在论坛上搜索,没有成功 我基本上只是完成课本上的第一个任务,如下所示: 我创建了一个新的RoR项目Windows 10、SQLite3和 rails new depot 然后,我使用以下代码在该项目中创建了一个脚手架: rails generate scaffold Product title:string description:text image_url:strin
rails new depot
然后,我使用以下代码在该项目中创建了一个脚手架:
rails generate scaffold Product title:string description:text image_url:string price:decimal
在测试应用程序时,我得到了db:migrate错误。我尝试了rakedb:migrate、db:rollback、db:drop,然后是db:create,我检查了迁移文件是否有错误,但似乎没有任何效果
我认为解决方案应该非常简单,因为应用程序应该在这种状态下尽可能地不复杂,但我无法隐藏它所显示的秘密
迁移挂起。要解决此问题,请运行:
bin/rails db:migrate RAILS_ENV=test
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/migration.rb:586:in `load_schema_if_pending!'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/migration.rb:592:in `block in maintain_test_schema!'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/migration.rb:823:in `suppress_messages'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/migration.rb:597:in `method_missing'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activerecord-5.0.1/lib/active_record/migration.rb:592:in `maintain_test_schema!'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.1/lib/rails/test_help.rb:15:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:293:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:293:in `block in require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:259:in `load_dependency'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/activesupport-5.0.1/lib/active_support/dependencies.rb:293:in `require'
from C:/Users/Flori/Desktop/bsp/test/test_helper.rb:3:in `<top (required)>'
from C:/Users/Flori/Desktop/bsp/test/controllers/products_controller_test.rb:1:in `require'
from C:/Users/Flori/Desktop/bsp/test/controllers/products_controller_test.rb:1:in `<top (required)>'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.1/lib/rails/test_unit/test_requirer.rb:11:in `require'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.1/lib/rails/test_unit/test_requirer.rb:11:in `block in require_files'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.1/lib/rails/test_unit/test_requirer.rb:10:in `each'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.1/lib/rails/test_unit/test_requirer.rb:10:in `require_files'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.1/lib/rails/test_unit/minitest_plugin.rb:86:in `plugin_rails_init'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/minitest-5.10.1/lib/minitest.rb:80:in `block in init_plugins'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/minitest-5.10.1/lib/minitest.rb:78:in `each'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/minitest-5.10.1/lib/minitest.rb:78:in `init_plugins'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/minitest-5.10.1/lib/minitest.rb:129:in `run'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/railties-5.0.1/lib/rails/test_unit/minitest_plugin.rb:73:in `run'
from C:/Ruby22-x64/lib/ruby/gems/2.2.0/gems/minitest-5.10.1/lib/minitest.rb:62:in `block in autorun'
切换您的服务器,然后运行
rake db:drop db:create db:migrate
这必须解决您的问题运行rake db:migrate时会出现什么错误?始终,始终将stacktrace包含在此类问题中。我在运行rake db:migrate时不会出现任何错误。我认为迁移成功了。听起来可能很傻,但是sqlite gem在您的gem文件中吗?