When I upgrade the version of django rest framework to 3.10.0, the project cannot start up and raise this exception.
Exception in thread django-main-thread:
Traceback (most recent call last):
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/rest_framework/settings.py", line 177, in import_from_string
return import_string(val)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/utils/module_loading.py", line 17, in import_string
module = import_module(module_path)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/djangorestframework_camel_case/parser.py", line 12, in <module>
from rest_framework.parsers import six, FormParser
ImportError: cannot import name 'six' from 'rest_framework.parsers' (/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/rest_framework/parsers.py)
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/Cellar/python/3.7.3/Frameworks/Python.framework/Versions/3.7/lib/python3.7/threading.py", line 917, in _bootstrap_inner
self.run()
File "/usr/local/Cellar/python/3.7.3/Frameworks/Python.framework/Versions/3.7/lib/python3.7/threading.py", line 865, in run
self._target(*self._args, **self._kwargs)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/utils/autoreload.py", line 54, in wrapper
fn(*args, **kwargs)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/core/management/commands/runserver.py", line 117, in inner_run
self.check(display_num_errors=True)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/core/management/base.py", line 390, in check
include_deployment_checks=include_deployment_checks,
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/core/management/base.py", line 377, in _run_checks
return checks.run_checks(**kwargs)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/core/checks/registry.py", line 72, in run_checks
new_errors = check(app_configs=app_configs)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/core/checks/urls.py", line 13, in check_url_config
return check_resolver(resolver)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/core/checks/urls.py", line 23, in check_resolver
return check_method()
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/urls/resolvers.py", line 398, in check
for pattern in self.url_patterns:
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/utils/functional.py", line 80, in __get__
res = instance.__dict__[self.name] = self.func(instance)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/urls/resolvers.py", line 579, in url_patterns
patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/utils/functional.py", line 80, in __get__
res = instance.__dict__[self.name] = self.func(instance)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/urls/resolvers.py", line 572, in urlconf_module
return import_module(self.urlconf_name)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/Users/xiaohe/Projects/parasite-python/para_latipay/urls.py", line 22, in <module>
path('web/', include('para_latipay.para_web.urls')),
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/django/urls/conf.py", line 34, in include
urlconf_module = import_module(urlconf_module)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/importlib/__init__.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 1006, in _gcd_import
File "<frozen importlib._bootstrap>", line 983, in _find_and_load
File "<frozen importlib._bootstrap>", line 967, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 677, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 728, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
File "/Users/xiaohe/Projects/parasite-python/para_latipay/para_web/urls.py", line 3, in <module>
from para_latipay.para_web.report_utils.ato_report_view import get_ato_report
File "/Users/xiaohe/Projects/parasite-python/para_latipay/para_web/report_utils/ato_report_view.py", line 7, in <module>
from rest_framework.decorators import api_view, permission_classes
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/rest_framework/decorators.py", line 13, in <module>
from rest_framework.views import APIView
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/rest_framework/views.py", line 104, in <module>
class APIView(View):
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/rest_framework/views.py", line 108, in APIView
parser_classes = api_settings.DEFAULT_PARSER_CLASSES
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/rest_framework/settings.py", line 220, in __getattr__
val = perform_import(val, attr)
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/rest_framework/settings.py", line 168, in perform_import
return [import_from_string(item, setting_name) for item in val]
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/rest_framework/settings.py", line 168, in <listcomp>
return [import_from_string(item, setting_name) for item in val]
File "/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/rest_framework/settings.py", line 180, in import_from_string
raise ImportError(msg)
ImportError: Could not import 'djangorestframework_camel_case.parser.CamelCaseJSONParser' for API setting 'DEFAULT_PARSER_CLASSES'. ImportError: cannot import name 'six' from 'rest_framework.parsers' (/Users/xiaohe/Projects/parasite-python/venv/lib/python3.7/site-packages/rest_framework/parsers.py).