Sha256: 6971b413642ba1f31a8834e8a82e3f578e8ed3352971f1656f28455e66ada983
Contents?: true
Size: 783 Bytes
Versions: 2
Compression:
Stored size: 783 Bytes
Contents
module Spree class ProductProperty < Spree::Base acts_as_list belongs_to :product, touch: true, class_name: 'Spree::Product', inverse_of: :product_properties belongs_to :property, class_name: 'Spree::Property', inverse_of: :product_properties validates :property, presence: true validates :value, length: { maximum: 255 } default_scope -> { order("#{self.table_name}.position") } # virtual attributes for use with AJAX completion stuff def property_name property.name if property end def property_name=(name) unless name.blank? unless property = Property.find_by(name: name) property = Property.create(name: name, presentation: name) end self.property = property end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
solidus_core-1.0.0 | app/models/spree/product_property.rb |
solidus_core-1.0.0.rc2 | app/models/spree/product_property.rb |