【问题标题】:Heroku recognize non exist modelHeroku 识别不存在的模型
【发布时间】:2012-07-21 19:13:18
【问题描述】:

我尝试在 Heroku 上上传我的 rails3.2 应用程序。 我按照 Heroku 上的说明进行了上传。

打开应用程序后,出现错误。 我运行了“heroku 日志”并得到了

    2012-07-21T19:07:01+00:00 app[web.1]: => Booting Thin
    2012-07-21T19:07:01+00:00 app[web.1]: => Rails 3.2.6 application starting in production on http://0.0.0.0:34125
    2012-07-21T19:07:01+00:00 app[web.1]: => Call with -d to detach
    2012-07-21T19:07:01+00:00 app[web.1]: Exiting
    2012-07-21T19:07:01+00:00 app[web.1]: => Ctrl-C to shutdown server
    2012-07-21T19:07:01+00:00 app[web.1]: /app/vendor/bundle/ruby/1.9.1/gems/activesupport-3.2.6/lib/active_support/dependencies.rb:251:in `require':   /app/app/models/question.rb:2: syntax error, unexpected '\n', expecting tASSOC (SyntaxError)

此日志显示我在“question.rb”中有 SyntaxError,但我之前已经删除了该模型。所以,这意味着 Heroku 识别出不存在的模型。

我试过“heroku pg:reset SHARED_DATABASE”和“bundle exec rake db:drop:all” 但是 Heroku 仍然错误地识别了模型。

我该如何解决这个问题。

【问题讨论】:

    标签: ruby-on-rails heroku


    【解决方案1】:

    您似乎还没有从您的 git 存储库中删除模型文件。

    首先让我们检查一下你的 git repo 中是否还有模型文件。这是为了检查是否是我怀疑的问题。

    在您的终端中执行git log

    复制最近提交的 git 提交代码,类似于 af99fe31c0598a8aezecf704c68d20c153ccad9c

    在您的终端中输入git ls-tree -r --name-only af99fe31c0598a8aezecf704c68d20c153ccad9c

    很可能,您仍会在列表中找到模型文件。

    git rm /app/app/models/question.rb

    提交任何更改,然后推送到 Heroku。

    heroku run rake db:migrateheroku restart

    看看问题是否仍然存在。

    【讨论】:

    • 感谢您的建议,我尝试了 git rm /app/app/models/question.rb 并且成功了!非常感谢。
    • 不客气。您可以选择我的答案作为接受的答案吗?
    猜你喜欢
    • 2011-10-06
    • 2019-03-16
    • 1970-01-01
    • 2021-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多