获取ruby 3.2.2上损坏的枚举列表

ubof19bj  于 12个月前  发布在  Ruby
关注(0)|答案(1)|浏览(121)

我刚刚将我的rails应用程序从ruby 2.7.0更新到3.2.2和以下代码:

class TemplateField < ApplicationRecord
  enum group: {
    'primary':    'primary',
    'secondary':  'secondary',
    'auxiliary':  'auxiliary',
    'header':     'header',
    'back':       'back',
    'unassigned': 'unassigned'
  }
end

class Template < ApplicationRecord
  TemplateField.groups.each do |_key, val|
    has_many "fields_#{val.pluralize}".to_sym #...
  end
end

下面是一条消息:

NoMethodError:
  undefined method `groups' for TemplateField:Class

基本上,在控制台中直接调用TemplateField.groups也会产生相同的错误。ruby 2.7和3.2之间有什么我应该注意的变化吗?

vnjpjtjt

vnjpjtjt1#

在我的特殊情况下,这是由过时的sorbet-rails依赖引起的。运行bundle update sorbet sorbet-rails为我解决了这个问题。

相关问题