Added the ability to clear tags by category.

This commit is contained in:
Jonathan Piacenti 2014-11-02 20:34:59 -06:00
parent 4491110dc1
commit 1c010b455a

View file

@ -149,9 +149,15 @@ class TagHandler(object):
getattr(self.obj, self._m2m_fieldname).remove(tagobj[0]) getattr(self.obj, self._m2m_fieldname).remove(tagobj[0])
self._recache() self._recache()
def clear(self): def clear(self, category=None):
"Remove all tags from the handler" """
Remove all tags from the handle. Optionally, only remove those within
a certain category.
"""
if not category:
getattr(self.obj, self._m2m_fieldname).clear() getattr(self.obj, self._m2m_fieldname).clear()
else:
getattr(self.obj, self._m2m_fieldname).filter(db_category=category).delete()
self._recache() self._recache()
def all(self, category=None, return_key_and_category=False): def all(self, category=None, return_key_and_category=False):