【问题标题】:Using an existing database of another Rails application in a new Rails application在新的 Rails 应用程序中使用另一个 Rails 应用程序的现有数据库
【发布时间】:2011-01-21 13:44:47
【问题描述】:

我是 Rails 新手。我之前创建了一个 Rails 应用程序,并且还在开发数据库中收集了一些数据记录。假设我创建了一个新的 Rails 应用程序,并且我更喜欢在新创建的 Rails 应用程序中使用第一个 Rails 应用程序的现有开发数据库,​​我该怎么做?

【问题讨论】:

    标签: ruby-on-rails database web-applications


    【解决方案1】:

    只需更改文件 config/database.yml 并设置数据库名称。

    【讨论】:

    • 在我的 database.yml 文件中,我将整个路径添加为 /var/lib/mysql/development,因为这是我以前的 Rails 应用程序的开发数据库所在的位置。当我进入新 Rails 应用程序的目录并执行 rake db:migrate 时,它​​使 rake 中止。数据库名称不正确。我无法找出数据库名称有什么问题。如果我删除整个路径名,只是将其作为 development 提及,然后运行服务器,则会显示 development.locs 不存在。(这里 locs 是控制器名称)。有人可以帮我找出解决办法吗?
    【解决方案2】:

    您的 database.yml 应如下所示:

    development:
      host: localhost
      adapter: mysql
      database: your_database_name [just the name, not the path]
      username: your_username
      password: your_password
    
    test:
    ...
    
    production:
    ...
    

    【讨论】:

      【解决方案3】:

      您需要在 database.yml 文件中更改数据库名称。 您遇到的第二个问题是迁移。

      我会从您以前的应用程序中复制迁移,以便您使用版本号保持迁移的完整性,并在需要时回滚。

      此外,如果您看到 development.locs - locs 指的是 table_name,在静止的上下文中,它通常也是控制器的名称。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多