Method: ActiveHouse::PreparedStatement.format_fields

Defined in:
lib/active_house/prepared_statement.rb

.format_fields(model_class, fields) ⇒ Object

Raises:



56
57
58
59
60
61
62
63
64
65
66
67
# File 'lib/active_house/prepared_statement.rb', line 56

def self.format_fields(model_class, fields)
  raise ArgumentError, 'wrong number of arguments' if fields.empty?

  fields.map do |field|
    if field.is_a?(Symbol) && model_class._attribute_opts.key?(field)
      opts = model_class._attribute_opts.fetch(field)
      opts.key?(:select) ? "#{opts[:select]} AS #{field}" : field.to_s
    else
      field.to_s
    end
  end
end