heroku上的新数据库列上的NoMethod错误

时间:2017-05-04 12:45:18

标签: ruby-on-rails ruby heroku

我在heroku上有一个应用程序,我最近添加了一个db列。迁移已运行,应用程序已重新启动但仍然时不时地调用此列方法时出现NoMethod错误。

我很困惑,因为当我尝试在heroku上的rails控制台上复制错误时,一切似乎都可以。即使我加载导致生产错误的URL,一切似乎都可以。

我的第一个赌注是其中一个dynos没有正确重启。有什么想法吗?

触发异常的行

if @company.ip_allowed_cookie

错误讯息:

NoMethodError: undefined method `ip_allowed_cookie' for #<Company:0x007fb78394baa0>

迁移文件:

class AddIpAllowedCookieToCompanies < ActiveRecord::Migration
  def change
    add_column :companies, :ip_allowed_cookie, :boolean
  end
end

IRB:

irb(main):004:0> Company.columns.last
=> #<ActiveRecord::ConnectionAdapters::PostgreSQLColumn:0x007f2003ab20c8 @array=false, @name="ip_allowed_cookie", @cast_type=#<ActiveRecord::Type::Boolean:0x007f2003946a18 @precision=nil, @scale=nil, @limit=nil>, @sql_type="boolean", @null=true, @default=nil, @default_function=nil>

irb(main):001:0> Company.first.ip_allowed_cookie
=> nil

1 个答案:

答案 0 :(得分:0)

heroku run rake db:migrate应该做的伎俩;)