module RequiredQueryAttributes::Model::ClassMethods

Attributes

required_query_attributes[R]

Public Class Methods

extended(base) click to toggle source
# File lib/required_query_attributes/model.rb, line 21
def self.extended(base)
  # Attach our own RequiredQueryAttributes::Relation
  # to existing delegate factories
  base.instance_eval do
    @relation_delegate_cache.values.each do |klass|
      klass.include Relation
    end
  end
end

Public Instance Methods

require_query_attribute(attribute) click to toggle source

Declare this in your model to enforce that the provided attribute must be used in at least one condition on SELECT statements.

Parameters:

  • name - Attribute to enforce presence in queries.

@api public

# File lib/required_query_attributes/model.rb, line 14
def require_query_attribute(attribute)
  @required_query_attributes ||= []
  @required_query_attributes << attribute.to_s
end