Sha256: 4859b5434927fc5f6964ec63edeac9b5fd1a9c2c01a4bbcad5f1954fcee8c6bc
Contents?: true
Size: 655 Bytes
Versions: 3
Compression:
Stored size: 655 Bytes
Contents
module ActsInRelation module Target def define with.each do |action| action.extend ActsInRelation::Supports::Verb class_object.class_eval <<-RUBY has_many :"#{action.pluralize}_as_target", foreign_key: :"target_#{target}_id", class_name: action.capitalize, dependent: :destroy has_many :"#{action.peoplize}", through: :"#{action.pluralize}_as_target", source: :"#{source}" def #{action.pastize}_by?(source) source.#{action.pluralize}.exists?(#{source}_id: source.id) end RUBY end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
acts_in_relation-0.1.1 | lib/acts_in_relation/target.rb |
acts_in_relation-0.1.0 | lib/acts_in_relation/target.rb |
acts_in_relation-0.0.1 | lib/acts_in_relation/target.rb |