I'm working in some ruby code. There's a module like the below:
module ResourceTransformation
extend ActiveSupport::Concern
class_methods do
def import(resource)
end
end
end
In one of the classes that uses this module, I would like to override the import method. My current code looks like this:
class SomeEntity < ApplicationRecord
include ResourceTransformation
def import(resource)
puts "in overriden import method!!!"
# super
end
end
Unfortunately, when I call SomeEntity.import it is simply invoking and returning the results from the module import method rather than from the class import method...
How can I properly override the module method with my class method?
class_methodsin your concern define class methods from given blockThat's why you need override not instance but class (
self) method