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
我创建了一个新的 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