def get_queryset(self):
"""Filter for ip family"""
if 'scope' in self.request.GET:
queryset = (manage.Prefix.objects.within(
self.request.GET.get('scope')).select_related('vlan')
.order_by('net_address'))
elif self.request.GET.get('family'):
queryset = manage.Prefix.objects.extra(
where=['family(netaddr)=%s'],
params=[self.request.GET['family']])
else:
queryset = manage.Prefix.objects.all()
# Filter prefixes that is smaller than minimum prefix length
results = [p for p in queryset
if IP(p.net_address).len() >= MINIMUMPREFIXLENGTH]
return results
评论列表
文章目录