【发布时间】:2018-07-17 18:00:48
【问题描述】:
问题:我无法在本地系统中启动我们正在开发的网站的 localhost。所以我可以玩它并编写自动化测试。早些时候它曾经工作过。
我通常在获取 Origin 之后运行的命令 - 通过 Github 应用程序开发分支
- 捆绑安装
- rake db:迁移
- 导轨 s
现在,rake db:migrate 不工作,给我一个错误
Macs-iMac:mac$ bin/rails db:migrate RAILS_ENV=development
== 20180619223217 CreateCarts: 迁移 ======================================
-- create_table(:carts)
rails 中止了!
StandardError:发生错误,所有后续迁移都已取消:
Mysql2::Error: 表 'carts' 已经存在: CREATE TABLE
carts(idbigint NOT NULL AUTO_INCREMENT 主键,user_idint,created_at日期时间不为空,updated_at日期时间不为空) ENGINE=InnoDB/Users/mac/.rvm/gems/ruby-2.4.1/gems/mysql2-0.4.10/lib/mysql2/client.rb:120:in `_查询'
/Users/mac/.rvm/gems/ruby-2.4.1/gems/mysql2-0.4.10/lib/mysql2/client.rb:120:in `查询中的阻塞'
/Users/mac/.rvm/gems/ruby-2.4.1/gems/mysql2-0.4.10/lib/mysql2/client.rb:119:in `handle_interrupt'
/Users/mac/.rvm/gems/ruby-2.4.1/gems/mysql2-0.4.10/lib/mysql2/client.rb:119:in `查询'
..很多这样的行..
有很多桌子,其中至少有 8 个,就像它说的“购物车”已经存在。
已完成以下故障排除。
- 我尝试执行 rake db:reset / rails db:reset - 它给了我类似“您正在尝试执行破坏性操作”这样的错误
- 为 Sequelpro 上的 dev 表导入新数据,然后运行 rake db:migrate
- 这三个命令都不起作用,同样的“破坏性操作”错误。 rails db:drop, rails db:schema:load, rails db:reset
我进入 db/migrate 文件夹,并在注释中添加了创建这 8 个问题表的行。 这似乎可行,能够启动应用程序,但显然应用程序中的某些菜单不起作用。
在几个月前创建的不同功能分支中切换我在系统中拥有的旧版本的应用程序是有效的。
我该如何解决这个问题?并继续启动应用程序:)
【问题讨论】:
-
您在尝试
rails db:drop时得到的确切错误是什么?您是否尝试过在谷歌上搜索该错误消息以查看其他人是如何克服它的?
标签: mysql ruby-on-rails