mirror of
https://github.com/TracksApp/tracks.git
synced 2025-12-18 16:20:12 +01:00
this way we can stay closer to the defaults of has_many_polymorphs thus making upgrading easier
16 lines
687 B
Ruby
16 lines
687 B
Ruby
|
|
# The Tagging join model. This model is automatically generated and added to your app if you run the tagging generator included with has_many_polymorphs.
|
|
|
|
class Tagging < ActiveRecord::Base
|
|
|
|
belongs_to :tag
|
|
belongs_to :taggable, :polymorphic => true
|
|
|
|
# If you also need to use <tt>acts_as_list</tt>, you will have to manage the tagging positions manually by creating decorated join records when you associate Tags with taggables.
|
|
# acts_as_list :scope => :taggable
|
|
|
|
# This callback makes sure that an orphaned <tt>Tag</tt> is deleted if it no longer tags anything.
|
|
def after_destroy
|
|
tag.destroy_without_callbacks if tag and tag.taggings.count == 0
|
|
end
|
|
end
|