X-Git-Url: https://git.openstreetmap.org/osqa.git/blobdiff_plain/3c3864586d0d186ca2408c1016052db1d3c4dc55..32e9ea1a6ec2d99d186e842fe5d3d77d697fb143:/forum/models/node.py diff --git a/forum/models/node.py b/forum/models/node.py index bebd07c..75b3933 100644 --- a/forum/models/node.py +++ b/forum/models/node.py @@ -95,7 +95,12 @@ class NodeQuerySet(CachedQuerySet): return super(NodeQuerySet, self).obj_from_datadict(datadict) def get(self, *args, **kwargs): - return super(NodeQuerySet, self).get(*args, **kwargs).leaf + node = super(NodeQuerySet, self).get(*args, **kwargs).leaf + + if not isinstance(node, self.model): + raise self.model.DoesNotExist() + + return node def filter_state(self, **kwargs): apply_bool = lambda q, b: b and q or ~q @@ -349,7 +354,7 @@ class Node(BaseModel, NodeContent): if action: for tag in self.tags.all(): - tag.tag.add_to_usage_count(-1) + tag.add_to_usage_count(-1) tag.save() else: for tag in Tag.objects.filter(name__in=self.tagname_list()):