为何要升级4.1.x
有个基于Django2.x开发的后台服务(有用到查询mysql数据),运行三年多了,随着数据量越攒越大,发现查询越来越慢,某天看到了Django文档里出现了下面的方法:
Changed in Django 4.1:
afirst() method was added.
Asynchronous version: afirst()
Django支持异步查询了(这个点会在django性能优化篇讲解),也许能解决我的问题。
升级Django
pip3 install --upgrade Django
Python就这点最好,升级模块简单地不可思议,一切顺利,run一下:
python3 manage.py runserver 0.0.0.0:9000
碰到第一个报错:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/threading.py", line 973, in _bootstrap_inner
self.run()
File "/usr/local/lib/python3.9/threading.py", line 910, in run
self._target(*self._args, **self._kwargs)
File "/usr/local/lib/python3.9/site-packages/django/utils/autoreload.py", line 64, in wrapper
fn(*args, **kwargs)
File "/usr/local/lib/python3.9/site-packages/django/core/management/commands/runserver.py", line 134, in inner_run
self.check(display_num_errors=True)
File "/usr/local/lib/python3.9/site-packages/django/core/management/base.py", line 475, in check
all_issues = checks.run_checks(
File "/usr/local/lib/python3.9/site-packages/django/core/checks/registry.py", line 88, in run_checks
new_errors = check(app_configs=app_configs, databases=databases)
File "/usr/local/lib/python3.9/site-packages/django/core/checks/caches.py", line 65, in check_file_based_cache_is_absolute
cache = caches[alias]
File "/usr/local/lib/python3.9/site-packages/django/utils/connection.py", line 62, in getitem
conn = self.create_connection(alias)
File "/usr/local/lib/python3.9/site-pa