Skip to content

Latest commit

 

History

History
38 lines (27 loc) · 648 Bytes

Rails-ActiveRecordOverride.md

File metadata and controls

38 lines (27 loc) · 648 Bytes

Pattern: Overriding built-in Active Record method

Issue: -

Description

Checks for overriding built-in Active Record methods instead of using callbacks.

Examples

# bad
class Book < ApplicationRecord
  def save
    self.title = title.upcase!
    super
  end
end

# good
class Book < ApplicationRecord
  before_save :upcase_title

  def upcase_title
    self.title = title.upcase!
  end
end

Configurable attributes

Name Default value
Include app/models/**/*.rb

Further Reading