diff options
author | Michael Elkins <melkins@tislabs.com> | 2013-03-29 20:58:15 +0000 |
---|---|---|
committer | Michael Elkins <melkins@tislabs.com> | 2013-03-29 20:58:15 +0000 |
commit | 02cbcbd8e29ace7f09e94adb7271a5d9bcbf8422 (patch) | |
tree | bcff75e717dba95605dae6576090799be98ea57f | |
parent | dda90dc8487061830cd4f091240adbdf35d50dba (diff) |
fix bug in orm query where roas covering a subset of a route were ignored
svn path=/trunk/; revision=5244
-rw-r--r-- | rpkid/rpki/gui/routeview/models.py | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/rpkid/rpki/gui/routeview/models.py b/rpkid/rpki/gui/routeview/models.py index 33de6fb2..acf05dc2 100644 --- a/rpkid/rpki/gui/routeview/models.py +++ b/rpkid/rpki/gui/routeview/models.py @@ -15,7 +15,7 @@ __version__ = '$Id$' -from django.db.models import PositiveIntegerField +from django.db.models import PositiveIntegerField, permalink import rpki.gui.models @@ -32,16 +32,16 @@ class RouteOrigin(rpki.gui.models.PrefixV4): def roas(self): "Return a queryset of ROAs which cover this route." return cacheview.models.ROA.objects.filter( - prefixes__prefix_min__lte=self.prefix_min, - prefixes__prefix_max__gte=self.prefix_max + prefixes__prefix_min__lte=self.prefix_max, + prefixes__prefix_max__gte=self.prefix_min ) @property def roa_prefixes(self): "Return a queryset of ROA prefixes which cover this route." return cacheview.models.ROAPrefixV4.objects.filter( - prefix_min__lte=self.prefix_min, - prefix_max__gte=self.prefix_max + prefix_min__lte=self.prefix_max, + prefix_max__gte=self.prefix_min ) @property @@ -55,6 +55,10 @@ class RouteOrigin(rpki.gui.models.PrefixV4): return 'invalid' return 'unknown' + @permalink + def get_absolute_url(self): + return ('rpki.gui.app.views.route_detail', [str(self.pk)]) + class Meta: # sort by increasing mask length (/16 before /24) ordering = ('prefix_min', '-prefix_max') |