Sha256: dba9ed86ef652339db6f134f51197efa4dfebb66bfc9dc147919f01474ef46b8
Contents?: true
Size: 1.14 KB
Versions: 1
Compression:
Stored size: 1.14 KB
Contents
# frozen_string_literal: true module Tramway::Inputs::AssociationsHelper def build_collection_for_association(form_object, property) full_class_name_association = form_object.class.full_class_name_association(property) check_valid_association full_class_name_association full_class_name_association.send("#{current_user.role}_scope", current_user.id).map do |obj| decorator_class(full_class_name_association).decorate obj end.sort_by do |association| association.name || "#{association.class.name} ##{association.id}" end end def build_value_for_association(form_object, property, value) form_object.send(property) || form_object.model.send("#{property}_id") || value end def check_valid_association(full_class_name_association) unless full_class_name_association Tramway::Error.raise_error( :tramway, :inputs_helpers, :association_params, :defined_with_property_method, property: ) end return unless full_class_name_association.is_a? Array Tramway::Error.raise_error( :tramway, :inputs_helpers, :association_params, :used_polymorphic_association, property: ) end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
tramway-0.1.2 | app/helpers/tramway/inputs/associations_helper.rb |