From: jordan Date: Tue, 10 Apr 2012 21:23:11 +0000 (+0000) Subject: revert previous commit X-Git-Tag: live~68 X-Git-Url: https://git.openstreetmap.org./osqa.git/commitdiff_plain/df656ce4c8ae86e0be20cc6e497cbab1ae8ffb3b revert previous commit git-svn-id: http://svn.osqa.net/svnroot/osqa/trunk@1249 0cfe37f9-358a-4d5e-be75-b63607b5c754 --- diff --git a/forum/models/node.py b/forum/models/node.py index e8d6334..5b6cdb5 100644 --- a/forum/models/node.py +++ b/forum/models/node.py @@ -1,7 +1,6 @@ # -*- coding: utf-8 -*- from base import * -import logging import re from tag import Tag @@ -258,7 +257,7 @@ class Node(BaseModel, NodeContent): @classmethod def _generate_cache_key(cls, key, group="node"): return super(Node, cls)._generate_cache_key(key, group) - + @classmethod def get_type(cls): return cls.__name__.lower() @@ -450,13 +449,15 @@ class Node(BaseModel, NodeContent): if not self.nis.deleted: tag.add_to_usage_count(1) + tag.save() if not self.nis.deleted: for name in tag_changes['removed']: try: tag = Tag.objects.get(name=name) tag.add_to_usage_count(-1) - except Tag.DoesNotExist: + tag.save() + except: pass return True @@ -470,13 +471,16 @@ class Node(BaseModel, NodeContent): if action: for tag in self.tags.all(): tag.add_to_usage_count(-1) + tag.save() else: for tag in Tag.objects.filter(name__in=self.tagname_list()): tag.add_to_usage_count(1) + tag.save() def delete(self, *args, **kwargs): for tag in self.tags.all(): tag.add_to_usage_count(-1) + tag.save() self.active_revision = None self.save() diff --git a/forum/models/tag.py b/forum/models/tag.py index 791636f..73b1e30 100644 --- a/forum/models/tag.py +++ b/forum/models/tag.py @@ -32,12 +32,10 @@ class Tag(BaseModel): return force_unicode(self.name) def add_to_usage_count(self, value): - if int(self.used_count + value) < 0: + if self.used_count + value < 0: self.used_count = 0 else: - self.used_count += value - - self.save() + self.used_count = models.F('used_count') + value def cache_key(self): return self._generate_cache_key(Tag.safe_cache_name(self.name))