File: apps.py

package info (click to toggle)
python-django-netfields 1.4.0-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 444 kB
  • sloc: python: 2,067; sh: 7; makefile: 4; sql: 2
file content (72 lines) | stat: -rw-r--r-- 2,738 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import django
from django.apps import AppConfig
from django.db.models import Field

from netfields.fields import CidrAddressField, InetAddressField
from netfields.lookups import (
    EndsWith,
    Family,
    IEndsWith,
    IRegex,
    IStartsWith,
    InvalidLookup,
    InvalidSearchLookup,
    MaxPrefixlen,
    MinPrefixlen,
    NetContained,
    NetContainedOrEqual,
    NetContains,
    NetContainsOrEquals,
    NetOverlaps,
    Prefixlen,
    Regex,
    StartsWith,
    HostMatches,
)


class NetfieldsConfig(AppConfig):
    name = 'netfields'

    if django.VERSION < (1, 9):
        for lookup in Field.class_lookups.keys():
            if lookup not in ['contains', 'startswith', 'endswith', 'icontains', 'istartswith', 'iendswith', 'isnull', 'in',
                              'exact', 'iexact', 'regex', 'iregex', 'lt', 'lte', 'gt', 'gte', 'equals', 'iequals', 'range', 'search']:
                invalid_lookup = InvalidLookup
                invalid_lookup.lookup_name = lookup
                CidrAddressField.register_lookup(invalid_lookup)
                InetAddressField.register_lookup(invalid_lookup)
        CidrAddressField.register_lookup(InvalidSearchLookup)
        InetAddressField.register_lookup(InvalidSearchLookup)

    CidrAddressField.register_lookup(EndsWith)
    CidrAddressField.register_lookup(IEndsWith)
    CidrAddressField.register_lookup(StartsWith)
    CidrAddressField.register_lookup(IStartsWith)
    CidrAddressField.register_lookup(Regex)
    CidrAddressField.register_lookup(IRegex)
    CidrAddressField.register_lookup(NetContained)
    CidrAddressField.register_lookup(NetContains)
    CidrAddressField.register_lookup(NetContainedOrEqual)
    CidrAddressField.register_lookup(NetContainsOrEquals)
    CidrAddressField.register_lookup(NetOverlaps)
    CidrAddressField.register_lookup(Family)
    CidrAddressField.register_lookup(MaxPrefixlen)
    CidrAddressField.register_lookup(MinPrefixlen)
    CidrAddressField.register_lookup(Prefixlen)
    CidrAddressField.register_lookup(HostMatches)

    InetAddressField.register_lookup(EndsWith)
    InetAddressField.register_lookup(IEndsWith)
    InetAddressField.register_lookup(StartsWith)
    InetAddressField.register_lookup(IStartsWith)
    InetAddressField.register_lookup(Regex)
    InetAddressField.register_lookup(IRegex)
    InetAddressField.register_lookup(NetContained)
    InetAddressField.register_lookup(NetContains)
    InetAddressField.register_lookup(NetContainedOrEqual)
    InetAddressField.register_lookup(NetContainsOrEquals)
    InetAddressField.register_lookup(NetOverlaps)
    InetAddressField.register_lookup(Family)
    InetAddressField.register_lookup(Prefixlen)
    InetAddressField.register_lookup(HostMatches)