【问题标题】:Heroku pushing old version of appHeroku 推送旧版应用
【发布时间】:2016-10-25 17:39:43
【问题描述】:

我对 Rails 还很陌生。我正在构建一个简单的新闻应用程序。昨天,我在 heroku 中删除了我的应用程序,并创建了一个名称完全相同的新应用程序。现在,每当我使用 git 推送到 heroku 时,它都不会更新新的数据库项目。我在名为“Posts”的模型中添加了一个名为“slug”的新表列,但它没有出现在 heroku 中。它确实出现在我的本地版本中。我认为新应用程序已连接到旧存储库。

  1. 如何检查发送到 heroku 的存储库?
  2. 如何检查我当前的应用连接到哪个存储库?
  3. 如何将新存储库与新应用程序连接起来?

我确信这是相当基本的。我完全被困住了。以下是 Heroku 的日志:

2016-10-25T18:08:19.030783+00:00 app[web.1]: F, [2016-10-25T18:08:19.030726 #3] FATAL -- : [27319deb-f2fb-403a-8ed9-4d8d21688c59] NoMethodError (undefined method `slug' for #<Post:0x007f25b7751b18>):
2016-10-25T18:08:19.030494+00:00 app[web.1]: F, [2016-10-25T18:08:19.030426 #3] FATAL -- : [27319deb-f2fb-403a-8ed9-4d8d21688c59]   
2016-10-25T18:08:19.031009+00:00 app[web.1]: F, [2016-10-25T18:08:19.030949 #3] FATAL -- : [27319deb-f2fb-403a-8ed9-4d8d21688c59] app/controllers/posts_controller.rb:30:in `create'
2016-10-25T18:08:19.030857+00:00 app[web.1]: F, [2016-10-25T18:08:19.030807 #3] FATAL -- : [27319deb-f2fb-403a-8ed9-4d8d21688c59]   
2016-10-25T18:08:19.030930+00:00 app[web.1]: F, [2016-10-25T18:08:19.030878 #3] FATAL -- : [27319deb-f2fb-403a-8ed9-4d8d21688c59] app/controllers/posts_controller.rb:31:in `block in create'

【问题讨论】:

    标签: ruby-on-rails git heroku


    【解决方案1】:

    您的新代码似乎已进入 Heroku,否则您将不会收到 slug 错误。您可能忘记在 Heroku 上运行迁移以创建新的 slug 列。

    要在 Heroku 上运行迁移,请从终端运行以下命令:

    heroku run rake db:migrate
    

    【讨论】:

    • 所以 HTML 编辑似乎可以通过,但数据库没有迁移。我已经尝试运行 heroku run rake:db migrate 几次,它就是不会让步。有什么想法吗?
    • 您是否编写了迁移以创建新列?
    猜你喜欢
    • 1970-01-01
    • 2012-02-06
    • 2019-04-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-13
    • 2011-09-20
    相关资源
    最近更新 更多