diff --git a/djing/fields.py b/djing/fields.py index 68328e5..c982beb 100644 --- a/djing/fields.py +++ b/djing/fields.py @@ -91,11 +91,11 @@ class MACAddressField(models.Field): return self.get_prep_value(value) except AddrFormatError: return None - elif lookup_type in ('in'): + elif lookup_type == 'in': try: macs = [] for mac in value: - macs += [self.get_prep_value(mac)] + macs.extend(self.get_prep_value(mac)) return macs except AddrFormatError: return None @@ -106,7 +106,7 @@ class MACAddressField(models.Field): try: from south.modelsinspector import add_introspection_rules - add_introspection_rules([], ["^macaddress\.fields\.MACAddressField"]) + add_introspection_rules((), ("^macaddress\.fields\.MACAddressField",)) except ImportError: pass diff --git a/searchapp/views.py b/searchapp/views.py index cf6f348..37e7731 100644 --- a/searchapp/views.py +++ b/searchapp/views.py @@ -23,16 +23,18 @@ def home(request): devices = Device.objects.filter(ip_address=s) else: abons = Abon.objects.filter( - Q(fio__icontains=s) | Q(username__icontains=s) | Q(telephone__icontains=s) + Q(fio__icontains=s) | Q(username__icontains=s) | Q(telephone__icontains=s) | + Q(additional_telephones__telephone__icontains=s) ) + if re.match(MAC_ADDR_REGEX, s): devices = Device.objects.filter(mac_addr=s) else: devices = Device.objects.filter(comment__icontains=s) else: - abons = [] - devices = [] + abons = () + devices = () for abn in abons: abn.fio = replace_without_case(escape(abn.fio), s, "%s" % s)