Module: DataMapper::Is::Slug::InstanceMethods
- Defined in:
- lib/dm-is-slug/is/slug.rb
Overview
ClassMethods
Instance Method Summary collapse
- #permanent_slug? ⇒ Boolean
- #slug_property ⇒ Object
- #slug_source ⇒ Object
- #slug_source_property ⇒ Object
- #slug_source_value ⇒ Object
-
#stale_slug? ⇒ Boolean
The slug is not stale if 1.
- #to_param ⇒ Object
Instance Method Details
#permanent_slug? ⇒ Boolean
132 133 134 |
# File 'lib/dm-is-slug/is/slug.rb', line 132 def permanent_slug? self.class.permanent_slug? end |
#slug_property ⇒ Object
144 145 146 |
# File 'lib/dm-is-slug/is/slug.rb', line 144 def slug_property self.class.slug_property end |
#slug_source ⇒ Object
136 137 138 |
# File 'lib/dm-is-slug/is/slug.rb', line 136 def slug_source self.class.slug_source end |
#slug_source_property ⇒ Object
140 141 142 |
# File 'lib/dm-is-slug/is/slug.rb', line 140 def slug_source_property self.class.slug_source_property end |
#slug_source_value ⇒ Object
148 149 150 |
# File 'lib/dm-is-slug/is/slug.rb', line 148 def slug_source_value self.send(slug_source) end |
#stale_slug? ⇒ Boolean
The slug is not stale if
-
the slug is permanent, and slug column has something valid in it
-
the slug source value is nil or empty
-
scope is not changed
156 157 158 159 160 161 162 163 164 |
# File 'lib/dm-is-slug/is/slug.rb', line 156 def stale_slug? !( (permanent_slug? && !slug.blank?) || slug_source_value.blank? ) || !(!new? && (dirty_attributes.keys.map(&:name) & (self.class.[:scope] || [])).compact.blank? ) end |
#to_param ⇒ Object
128 129 130 |
# File 'lib/dm-is-slug/is/slug.rb', line 128 def to_param [slug] end |