模型的名称包含"缓存"



在我的代码中,我有一个模型,其名称包含字符串"cache"。例如:

class DataCache < ActiveRecord::Base

表名为CCD_ 1。当我运行时:

"data_caches".classify.constantize.new

为了初始化模型,我得到了这样的错误:

NameError: uninitialized constant DataCach

为什么不起作用?我期望"DataCache",但得到了"DataCach"。

看看Rails中的Infections类。将以下文本添加到config/initializers/inflections.rb类:

ActiveSupport::Inflector.inflections do |inflect|
  inflect.irregular 'cache', 'caches'
end

现在在rails控制台中尝试单词:

>> "caches".singularize
=> "cache"
>> "cache".pluralize
=> "caches"

您应该帮助rails了解如何在这种情况下将单数转换为复数。尝试使用此名称更新config/initializers/inflections.rb。我认为它应该能解决问题。

最新更新