module Railjet::Repository::ActiveRecord::RepositoryMethods

Public Instance Methods

all() click to toggle source
# File lib/railjet/repository/active_record.rb, line 9
def all
  record.all
end
build(args = {}, &block) click to toggle source
# File lib/railjet/repository/active_record.rb, line 21
def build(args = {}, &block)
  record.new(args, &block)
end
destroy(object) click to toggle source
# File lib/railjet/repository/active_record.rb, line 36
def destroy(object)
  object.destroy!
end
duplicate(object, args = {}) { |new_object| ... } click to toggle source
# File lib/railjet/repository/active_record.rb, line 25
def duplicate(object, args = {})
  object.dup.tap do |new_object|
    new_object.assign_attributes(args) if args.present?
    yield(new_object)                  if block_given?
  end
end
find_by_id(id) click to toggle source
# File lib/railjet/repository/active_record.rb, line 13
def find_by_id(id)
  record.find(id)
end
find_by_ids(ids) click to toggle source
# File lib/railjet/repository/active_record.rb, line 17
def find_by_ids(ids)
  record.where(id: ids)
end
persist(object) click to toggle source
# File lib/railjet/repository/active_record.rb, line 32
def persist(object)
  object.save!
end
transaction(&block) click to toggle source
# File lib/railjet/repository/active_record.rb, line 40
def transaction(&block)
  record.transaction(&block)
end

Private Instance Methods

query_columns() click to toggle source
# File lib/railjet/repository/active_record.rb, line 46
def query_columns
  columns = (record.column_names - [:created_at, :updated_at])
  columns.map { |column_name| "#{record.table_name}.#{column_name}" }
end