﻿id	summary	reporter	owner	description	type	status	component	version	severity	resolution	keywords	cc	stage	has_patch	needs_docs	needs_tests	needs_better_patch	easy	ui_ux
34707	AttributeError: 'function' object has no attribute 'cache_clear' when registering a custom lookup	Justin Michalicek	nobody	"Going from the documentation at https://docs.djangoproject.com/en/4.1/howto/custom-lookups/#a-lookup-example, I created the custom lookup exactly as shown there. I then registered it in an AppConfig.ready(). When django starts I get the exception {{{AttributeError: 'function' object has no attribute 'cache_clear'}}}.

{{{
python manage.py runserver 0.0.0.0:8000
timestamp=None level=None event='Watching for file changes with StatReloader' logger=None
Exception in thread django-main-thread:
Traceback (most recent call last):
  File ""/usr/local/lib/python3.11/threading.py"", line 1038, in _bootstrap_inner
    self.run()
  File ""/app/.venv/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py"", line 72, in run
    reraise(*_capture_exception())
  File ""/app/.venv/lib/python3.11/site-packages/sentry_sdk/_compat.py"", line 60, in reraise
    raise value
  File ""/app/.venv/lib/python3.11/site-packages/sentry_sdk/integrations/threading.py"", line 70, in run
    return old_run_func(self, *a, **kw)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ""/usr/local/lib/python3.11/threading.py"", line 975, in run
    self._target(*self._args, **self._kwargs)
  File ""/app/.venv/lib/python3.11/site-packages/django/utils/autoreload.py"", line 64, in wrapper
    fn(*args, **kwargs)
  File ""/app/.venv/lib/python3.11/site-packages/django/core/management/commands/runserver.py"", line 125, in inner_run
    autoreload.raise_last_exception()
  File ""/app/.venv/lib/python3.11/site-packages/django/utils/autoreload.py"", line 87, in raise_last_exception
    raise _exception[1]
  File ""/app/.venv/lib/python3.11/site-packages/django/core/management/__init__.py"", line 398, in execute
    autoreload.check_errors(django.setup)()
  File ""/app/.venv/lib/python3.11/site-packages/django/utils/autoreload.py"", line 64, in wrapper
    fn(*args, **kwargs)
  File ""/app/.venv/lib/python3.11/site-packages/django/__init__.py"", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File ""/app/.venv/lib/python3.11/site-packages/django/apps/registry.py"", line 124, in populate
    app_config.ready()
  File ""/app/app/my_project/core/apps.py"", line 13, in ready
    Field.register_lookup(NotEqual)
  File ""/app/.venv/lib/python3.11/site-packages/django/db/models/query_utils.py"", line 256, in register_lookup
    cls._clear_cached_lookups()
  File ""/app/.venv/lib/python3.11/site-packages/django/db/models/query_utils.py"", line 247, in _clear_cached_lookups
    subclass.get_lookups.cache_clear()
    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
AttributeError: 'function' object has no attribute 'cache_clear'
}}}
"	Uncategorized	closed	Uncategorized	4.1	Normal	invalid			Unreviewed	0	0	0	0	0	0
