Sha256: 866f930dab9f0813e37bdbaf9795c8754c3634bd55943fe583dfd9051fba30d6
Contents?: true
Size: 1.44 KB
Versions: 1
Compression:
Stored size: 1.44 KB
Contents
pp caller module Coupler module Models class Field < Sequel::Model include CommonModel many_to_one :resource one_to_many :transformations, :key => :source_field_id def original_column_options { :name => name, :type => db_type, :primary_key => is_primary_key } end def local_column_options { :name => name, :type => final_db_type, :primary_key => is_primary_key } end def final_type local_type || self[:type] end def final_db_type local_db_type || db_type end def scenarios_dataset marshalled_id = [Marshal.dump(id)].pack('m') Scenario. select(:scenarios.*). filter({:project_id => resource.project_id} & ({:resource_1_id => resource_id} | {:resource_2_id => resource_id})). join(Matcher, :scenario_id => :id). join(Comparison, :matcher_id => :id). filter({:lhs_type => 'field', :raw_lhs_value => marshalled_id} | {:rhs_type => 'field', :raw_rhs_value => marshalled_id}) end def name_sym @name_sym ||= name.to_sym end private def validate super validates_presence [:name, :resource_id] validates_unique [:name, :resource_id] end def before_save super case is_primary_key when TrueClass, 1 self.is_selected = 1 end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
coupler-0.0.7-java | lib/coupler/models/field.rb |