我正在尝试将 Ruby on Rails 项目导入到我的计算机中,但遇到了数据库的各种问题。
情况是这样的:
我有一个从另一位开发人员那里获得的appname.tar.gz。我提取它并将其重新定位到我的用户目录以使用它。
- 接下来我在目录中运行
bundle install
来安装gem 依赖关系。 - 然后我运行
rake db:create
来创建数据库并 从同一目录中的 DB 文件夹加载架构和结构。这就是我遇到各种问题的地方。当我启动应用程序时,我收到一条错误消息,指出数据库迁移待处理。- structural.sql 是 MySQL 转储 10.13
- 而database.yml 文件将适配器设置为postgres:
适配器:postgres
。这正常吗?
这是将现有应用导入您的环境的最佳方式吗?
任何帮助将不胜感激。
最佳答案
对我来说,这听起来像是您获得了 MySQL 转储并且应用程序配置为使用 postgres。我想知道为什么会这样,但您可以尝试在 config/database.yml 文件中通过设置类似
的内容来使用 mysql 适配器default: &default
adapter: mysql2
encoding: utf8
pool: <%= ENV.fetch("RAILS_MAX_THREADS") { 5 } %>
username: root
password:
host: localhost
development:
<<: *default
database: foobar_development
有趣的是适配器:mysql2
。
我从一个全新的 Rails 应用程序中获取了这个。你肯定需要 mysql 运行。
希望这有帮助。如果没有,你必须联系其他人来获取一些 postgresql 兼容的转储。
关于mysql - 如何将 ruby on Rails 应用程序导入到另一台计算机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48547148/