将虚拟属性添加到位于 Gem 中的模型



我有一个模型位于宝石中的某个地方 -PgSearch::Document.我可以为其添加虚拟属性吗?在我看来,这段代码不起作用:

app/models/concern/pg_search.rb:

module PgSearch
class Document < ActiveRecord::Base
attr_accessor :my_virtual_attribute
super
end
end

虽然"在我看来,这段代码不起作用:">不是很具有描述性,并且您没有提供推理或用法的上下文。

我建议使用以下实现(位于 config/initializers/[some_identifiable_file_name].rb 中(,以确保在初始化应用程序时加载此虚拟属性添加

module DocumentExtension
def self.extended(mod) 
mod.instance_eval { attr_accessor :my_virtual_attribute } 
end 
end 
PgSearch::Document.extend(DocumentExtension) 

最新更新