FriendlyId uses Rails's extending method to avoid overwriting your model's find
method. Internally this is implemented similar to this:
def self.friendly
all.extending(friendly_id_config.finder_methods)
end
This however comes with a performance impact, because extending
invokes Ruby's extend
, which blows away MRI's method cache. To work around this, FriendlyId lets you include a :finders
module which overrides your model's find
to increase performance.