Мы знаем, что Rails 5 добавил ApplicationRecord как абстрактный класс, который был унаследован нашими моделями (ActiveRecord).
Но в основном, я думаю, что каждое техническое требование, которое мы делаем с ApplicationRecord, мы также можем делать с ActiveRecord::Base. Например:
module MyFeatures
def do_something
puts "Doing something"
end
end
class ApplicationRecord < ActiveRecord::Base
include MyFeatures
self.abstract_class = true
end
Итак, теперь каждая модель будет привязана к поведению MyFeatures. Но мы также можем достичь этого в Rails 4:
ActiveRecord::Base.include(MyFeatures)
Итак, в чем преимущество использования ApplicationRecord, как вы думаете, нужно добавить ApplicationRecord?