Sha256: 9b7ef0879a19f45b6198865e6ab331ae77e9e71838ad98bc147e8b23672b1068
Contents?: true
Size: 849 Bytes
Versions: 1
Compression:
Stored size: 849 Bytes
Contents
module Beef module Has module Assets def self.included(base) base.extend ClassMethods end module ClassMethods def has_assets has_many :assetings, :as => :assetable, :dependent => :delete_all has_many :assets, :through => :assetings # Override the default asset_ids method define_method("asset_ids=") do |new_value| ids = (new_value || []).reject { |nid| nid.blank? } ids.collect!{ |id| id.to_i} logger.debug "ASSETS the same #{ids == self.asset_ids} | IDS #{ids} | #{self.asset_ids}" return if ids == self.asset_ids self.assets.clear ids.each_index do |idx| self.assets << Asset.find(ids[idx]) end end end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
beef-has_assets-0.2.2 | lib/has_assets.rb |