Ruby rake任务中未定义的方法常量化

Ruby rake任务中未定义的方法常量化,ruby,Ruby,我正在尝试运行此代码“ 但是我得到了这个错误:NoMethodError:undefined方法constantize'for#` 你知道我如何解决这个问题吗?你只能在字符串上调用,但你是在数组工厂中调用它 删除FACTORY.constantize并添加FACTORY.constantize.public\u send(:delete\u all) 另外,请确保您已要求您只能在字符串上调用,但您是在数组工厂上调用它 删除FACTORY.constantize并添加FACTORY.constan

我正在尝试运行此代码“

但是我得到了这个错误:
NoMethodError:undefined方法
constantize'for#`

你知道我如何解决这个问题吗?

你只能在字符串上调用,但你是在数组
工厂中调用它

删除
FACTORY.constantize
并添加
FACTORY.constantize.public\u send(:delete\u all)

另外,请确保您已要求

您只能在字符串上调用,但您是在数组
工厂
上调用它

删除
FACTORY.constantize
并添加
FACTORY.constantize.public\u send(:delete\u all)


另外,请确保您在ruby中已要求

,默认情况下大写变量为常量,因此您不能对其调用
constantize。在您的情况下,它只是一个数组,因此应该可以:

FACTORY = %w(ProcessedTransaction Chargeback).freeze
FACTORY.each do |factory|
  factory.constantize.public_send(:delete_all)
end

在ruby中,大写变量默认为常量,因此您不能对其调用
constantize
。在您的情况下,它只是一个数组,因此应该可以:

FACTORY = %w(ProcessedTransaction Chargeback).freeze
FACTORY.each do |factory|
  factory.constantize.public_send(:delete_all)
end

什么是
constantize
?什么是
constantize