Sha256: f930f5ff13d90f8607a100746eb018ff0a4801f0b1f46ce653ce0047dd85d12f
Contents?: true
Size: 732 Bytes
Versions: 8
Compression:
Stored size: 732 Bytes
Contents
# frozen_string_literal: true require_relative 'field_creatable' require_relative 'field_retrievable' module DecoLite # Defines methods to assign model field values dynamically. module FieldAssignable include FieldCreatable include FieldRetrievable def set_field_values(hash:, field_info:, options:) field_info.each do |name, info| value = get_field_value(hash: hash, field_info: info) set_field_value(field_name: name, value: value, options: options) end end def set_field_value(field_name:, value:, options:) # Create our fields before we send. create_field_accessor field_name: field_name, options: options send("#{field_name}=", value) end end end
Version data entries
8 entries across 8 versions & 1 rubygems