启用增强的语言指标后,为什么在heroku(rails)控制台中出现NameError?

我为Ruby on Rails应用程序following the documentation(barnes gem等)在Heroku中为ruby语言指标启用了增强的语言指标。这成功完成了。

稍后,当我通过Rails控制台heroku console --app my-rails-app-name检查系统中的某些内容时看到错误。任何对模型常量示例的调用都会导致以下输出:

Running console on ⬢ my-rails-app-name... up,run.8724 (Standard-1X)
irb(main):001:0> MyModel.all.count
Traceback (most recent call last):
        4: from /app/vendor/bundle/bin/console:29:in `<main>'
        3: from /app/vendor/bundle/bin/console:29:in `load'
        2: from /app/vendor/bundle/ruby/2.6.0/gems/countries-3.0.0/bin/console:14:in `<top (required)>'
        1: from (irb):1
NameError (uninitialized constant MyModel)

解决方法是显式运行Rails控制台

heroku run rails console --app my-rails-app-name
mysetry 回答:启用增强的语言指标后,为什么在heroku(rails)控制台中出现NameError?

由于增强的语言指标需要加载另一个构建包,因此我们可能会怀疑这是原因。但是不要放弃!可以配置构建包的执行顺序。因此,将heroku/metrics构建包拖到heroku/ruby构建包上方,再部署一次,然后您应该能够坚持自己的工作流程:)

Buildpacks settings screenshot

本文链接:https://www.f2er.com/2992507.html

大家都在问