module Cequel
module Record
module Schema
extend ActiveSupport::Concern
extend Util::Forwardable
included do
class_attribute :table_name, instance_writer: false
self.table_name = name.demodulize.tableize.to_sym unless name.nil? || self.table_name.present?
end
end
end
end
我想在我的rails应用程序中使用此模块中的块included
块,但是当我在rails中的初始化程序中定义相同的代码时,我得到了
included': Cannot define multiple 'included' blocks for a Concern (ActiveSupport::Concern::MultipleIncludedBlocks)
This是我想用补丁修复的,直到这个PR合并为止,有没有办法修补包含的块?
答案 0 :(得分:1)
您需要在初始化程序中从头开始。也就是说,您应该使用
完全删除模块常量定义Cequel::Record.send :remove_const, :Schema
现在您可以重新执行代码段,根据需要定义Schema
:Ruby不再了解它。