【问题标题】:How to rake database to Heroku on cloud9如何将数据库耙到 cloud9 上的 Heroku
【发布时间】:2012-03-09 06:50:07
【问题描述】:

我是 Heroku、Github 和 RoR 的新手,所以这周我磕磕绊绊。

我在 Git 上有一个数据库,我想克隆它并通过 Cloud9 将其推送到我的 Heroku 应用程序(我正在使用 chromebook)

我无法使用 C9 终端中的命令:

    heroku run rake db:migrate
    heroku restart

tl;dr:如何将 git 数据库从 Cloud9 迁移到 Heroku 应用程序的数据库?

哦,还有:如果我使用了错误的术语,请让我知道我是一个多么糟糕的人并纠正我。

【问题讨论】:

    标签: ruby-on-rails heroku github database-migration cloud9-ide


    【解决方案1】:

    虽然 Cloud9 支持 git 部署,但您无法通过其控制台运行所需的命令来管理您的应用程序。您将需要在本地使用 heroku gem 来管理您的应用程序,这在 Chrome 书上是不可能的。您最好的选择是在某个地方使用 VPS 服务器,您可以通过 SSH 进入(假设这是可能的)工作。

    【讨论】:

    • 正确。 Cloud9 的托管版本没有安装 Heroku 二进制文件。如果 Heroku API 提供这样的功能,您可以使用它(通过编写执行此操作的 node.js 脚本)。
    【解决方案2】:

    您必须通过 c9pm(Cloud9 包管理器)安装 Heroku 工具带:

    c9pm install heroku
    

    然后您必须登录到您的 Heroku 帐户并执行 db:migrate。 另外我建议用这条线分开运行它:

    heroku run:detached rake db:migrate
    

    我无法从 C9 执行正常的 rake。我总是必须单独运行它才能使其工作。

    【讨论】:

      【解决方案3】:

      Heroku 有一个 API。如果您无法安装 heroku ruby​​ gem,您可能需要调用它。也许有人做过这个尝试谷歌。

      【讨论】:

      • 过去 6~ 小时我一直在尝试 google... 没有帮助。我不明白为什么没有创建数据库。对我是 Rails 的新手没有帮助...
      【解决方案4】:

      如果我之前的回答对您不起作用,因为您无法在 C9 中安装 Heroku Toolbelt。您可以运行 rake 在生产(Heroku)环境中执行 migrate,如下所示:

      RAILS_ENV=production rake db:migrate
      

      这将使用 本地存储库(在 C9 中)中的 database.yml 来更新 Heroku(生产)数据库。

      我不推荐这种做法,因为您可以在 Heroku 存储库中从以前的 commits/pushes 中获得另一个 DB 定义,但可以解决问题。

      【讨论】:

        猜你喜欢
        • 2013-01-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-11-13
        • 2013-07-11
        • 2015-07-20
        • 2013-10-29
        • 1970-01-01
        相关资源
        最近更新 更多