rake db:migrate 正在从其他 rails 项目创建表

rake db:migrate is creating tables from other rails projects

我创建了一个新的 rails 项目,并添加了一个迁移以创建一个名为 blogs 的 table。当我 运行 rake db:migrate 它创建了这个 table 以及我在不同项目中设置的其他 table。 在 db/migrate 下,我只有 1 个文件包含我添加的迁移,其他 table 的项目中没有引用,出于某种原因,它正在从其他项目中提取迁移并将其添加到我的数据库中项目

Rails版本: 5.1.4 Ruby版本: 2.4.1

可能您正在使用相同的数据库。您需要在 config\database.yml 文件中为每个项目指定不同的数据库。您可以使用相同的用户名、相同的密码等,但至少数据库:(数据库名称)如果您不希望所有表都在一个数据库中,则必须不同

您需要为每个项目配置 database.yml。

并为开发、测试和生产创建 3 个数据库。

并指定访问数据库所需的所有信息。

例如:

development:
  adapter: postgresql
  username: postgres
  password: blogs_postgres
  database: blogs_development
  encoding: utf8
  host: localhost
  pool: 5
  timeout: 5000

参考Here了解更多信息。

我刚刚解决了我的问题,似乎 Spring 在我的环境中搞混了。 参考:https://github.com/rails/rails/issues/31529#issuecomment-353269787