Model class otp_yubikey.models.YubikeyDevice doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.
If 2fa is disabled in the config, the following exception is thrown.
Environment:
Request Method: GET
Request URL: http://localhost/
Django Version: 2.2.7
Python Version: 3.7.5
Installed Applications:
['django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django_global_request',
'settings_context_processor',
'sass_processor',
'easyaudit',
'dbbackup',
'django_cron',
'bootstrap4',
'fa',
'django_any_js',
'django_tables2',
'easy_thumbnails',
'image_cropping',
'maintenance_mode',
'menu_generator',
'phonenumber_field',
'debug_toolbar',
'contact_form',
'django_select2',
'hattori',
'django_otp.plugins.otp_totp',
'django_otp.plugins.otp_static',
'django_otp',
'biscuit.core',
'impersonate',
'two_factor',
'biscuit.apps.alsijil',
'isbn_field',
'biscuit.apps.exlibris',
'biscuit.apps.schild_nrw',
'biscuit.apps.chronos',
'biscuit.apps.untis']
Installed Middleware:
['debug_toolbar.middleware.DebugToolbarMiddleware',
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.locale.LocaleMiddleware',
'django_global_request.middleware.GlobalRequestMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django_otp.middleware.OTPMiddleware',
'impersonate.middleware.ImpersonateMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
'easyaudit.middleware.easyaudit.EasyAuditMiddleware',
'maintenance_mode.middleware.MaintenanceModeMiddleware']
Traceback:
File "/srv/biscuit/lib/python3.7/site-packages/django/core/handlers/exception.py" in inner
34. response = get_response(request)
File "/srv/biscuit/lib/python3.7/site-packages/django/utils/deprecation.py" in __call__
93. response = self.process_request(request)
File "/srv/biscuit/lib/python3.7/site-packages/django/middleware/locale.py" in process_request
20. i18n_patterns_used, prefixed_default_language = is_language_prefix_patterns_used(urlconf)
File "/srv/biscuit/lib/python3.7/site-packages/django/conf/urls/i18n.py" in is_language_prefix_patterns_used
31. for url_pattern in get_resolver(urlconf).url_patterns:
File "/srv/biscuit/lib/python3.7/site-packages/django/utils/functional.py" in __get__
80. res = instance.__dict__[self.name] = self.func(instance)
File "/srv/biscuit/lib/python3.7/site-packages/django/urls/resolvers.py" in url_patterns
584. patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
File "/srv/biscuit/lib/python3.7/site-packages/django/utils/functional.py" in __get__
80. res = instance.__dict__[self.name] = self.func(instance)
File "/srv/biscuit/lib/python3.7/site-packages/django/urls/resolvers.py" in urlconf_module
577. return import_module(self.urlconf_name)
File "/srv/biscuit/lib/python3.7/importlib/__init__.py" in import_module
127. return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>" in _gcd_import
1006. <source code not available>
File "<frozen importlib._bootstrap>" in _find_and_load
983. <source code not available>
File "<frozen importlib._bootstrap>" in _find_and_load_unlocked
967. <source code not available>
File "<frozen importlib._bootstrap>" in _load_unlocked
677. <source code not available>
File "<frozen importlib._bootstrap_external>" in exec_module
728. <source code not available>
File "<frozen importlib._bootstrap>" in _call_with_frames_removed
219. <source code not available>
File "/usr/src/BiscuIT-ng/biscuit/core/urls.py" in <module>
8. from two_factor.urls import urlpatterns as tf_urls
File "/srv/biscuit/lib/python3.7/site-packages/two_factor/urls.py" in <module>
3. from two_factor.views import (
File "/srv/biscuit/lib/python3.7/site-packages/two_factor/views/__init__.py" in <module>
1. from .core import (
File "/srv/biscuit/lib/python3.7/site-packages/two_factor/views/core.py" in <module>
32. from ..forms import (
File "/srv/biscuit/lib/python3.7/site-packages/two_factor/forms.py" in <module>
18. from otp_yubikey.models import RemoteYubikeyDevice, YubikeyDevice
File "/srv/biscuit/lib/python3.7/site-packages/otp_yubikey/models.py" in <module>
35. class YubikeyDevice(Device):
File "/srv/biscuit/lib/python3.7/site-packages/django/db/models/base.py" in __new__
111. "INSTALLED_APPS." % (module, name)
Exception Type: RuntimeError at /
Exception Value: Model class otp_yubikey.models.YubikeyDevice doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.