def testGetTags(self): self.assertEqual(utils.get_tags('foo #spam bar'), ['#spam']) self.assertEqual(utils.get_tags('foo #spam#egg bar'), ['#spam#egg']) self.assertEqual(utils.get_tags('foo #spam bar #spam#egg baz'), ['#spam', '#spam#egg']) self.assertEqual(utils.get_tags('foo http://example.com/#test bar'), [])
def save(self, *args, **kwargs): # Prevent ValueError: 'Entry' instance needs to have a primary key # value before a many-to-many relationship can be used. super(Entry, self).save(*args, **kwargs) self.contributors = [] if hasattr(self, '_contributors'): for people in self._contributors: self.contributors.add(people) tags = utils.get_tags(self.content) self.tags = [Tag.objects.get_or_create_from_path(x) for x in tags] super(Entry, self).save(*args, **kwargs)