Closed
Description
I have installed django-guardian, but I’m not currently using it, so (of course) I don’t have config settings for it. Normally, I guess it would be imported on demand based on INSTALLED_APPS
, but it seems that REST Framework automatically imports it from its compat
module.
The workaround is equally obvious and trivial (uninstall the unused and offending package), and no problem in a virtualenv, but I’m not sure how this might affect others (do some people not use virtualenvs? I’m guessing some might).
Traceback (most recent call last):
File "/home/petter/.virtualenvs/condite/local/lib/python2.7/site-packages/django/core/handlers/base.py", line 99, in get_response
resolver_match = resolver.resolve(request.path_info)
File "/home/petter/.virtualenvs/condite/local/lib/python2.7/site-packages/django/core/urlresolvers.py", line 337, in resolve
for pattern in self.url_patterns:
File "/home/petter/.virtualenvs/condite/local/lib/python2.7/site-packages/django/core/urlresolvers.py", line 365, in url_patterns
patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
File "/home/petter/.virtualenvs/condite/local/lib/python2.7/site-packages/django/core/urlresolvers.py", line 360, in urlconf_module
self._urlconf_module = import_module(self.urlconf_name)
File "/home/petter/.virtualenvs/condite/local/lib/python2.7/site-packages/django/utils/importlib.py", line 40, in import_module
__import__(name)
File "/home/petter/projects/condite/condite/urls.py", line 7, in <module>
import condite.rest.reportviews
File "/home/petter/projects/condite/condite/rest/reportviews.py", line 3, in <module>
from rest_framework.decorators import api_view
File "/home/petter/.virtualenvs/condite/local/lib/python2.7/site-packages/rest_framework/decorators.py", line 10, in <module>
from rest_framework.compat import six
File "/home/petter/.virtualenvs/condite/local/lib/python2.7/site-packages/rest_framework/compat.py", line 54, in <module>
import guardian.shortcuts # Fixes #1624
File "/home/petter/.virtualenvs/condite/local/lib/python2.7/site-packages/guardian/shortcuts.py", line 16, in <module>
from guardian.core import ObjectPermissionChecker
File "/home/petter/.virtualenvs/condite/local/lib/python2.7/site-packages/guardian/core.py", line 8, in <module>
from guardian.utils import get_identity
File "/home/petter/.virtualenvs/condite/local/lib/python2.7/site-packages/guardian/utils.py", line 24, in <module>
from guardian.conf import settings as guardian_settings
File "/home/petter/.virtualenvs/condite/local/lib/python2.7/site-packages/guardian/conf/settings.py", line 11, in <module>
raise ImproperlyConfigured("In order to use django-guardian's "
ImproperlyConfigured: In order to use django-guardian's ObjectPermissionBackend authorization backend you have to configure ANONYMOUS_USER_ID at your settings module