记一次drf-jwt查错
Django自定义用户后,做delete操作报错如下:
Traceback (most recent call last):
File "./modules/user/views.py", line 327, in destroy
User.objects.filter(is_active=False).delete()
File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 722, in delete
deleted, _rows_count = collector.delete()
File "/usr/local/lib/python3.6/site-packages/django/db/models/deletion.py", line 314, in delete
count = qs._raw_delete(using=self.using)
File "/usr/local/lib/python3.6/site-packages/django/db/models/query.py", line 736, in _raw_delete
return sql.DeleteQuery(self.model).delete_qs(self, using)
File "/usr/local/lib/python3.6/site-packages/django/db/models/sql/subqueries.py", line 75, in delete_qs
cursor = self.get_compiler(using).execute_sql(CURSOR)
File "/usr/local/lib/python3.6/site-packages/django/db/models/sql/compiler.py", line 1144, in execute_sql
cursor.execute(sql, params)
File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 68, in execute
return self._execute_with_wrappers(sql, params, many=False, executor=self._execute)
File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 77, in _execute_with_wrappers
return executor(sql, params, many, context)
File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 86, in _execute
return self.cursor.execute(sql, params)
File "/usr/local/lib/python3.6/site-packages/django/db/utils.py", line 90, in __exit__
raise dj_exc_value.with_traceback(traceback) from exc_value
File "/usr/local/lib/python3.6/site-packages/django/db/backends/utils.py", line 86, in _execute
return self.cursor.execute(sql, params)
django.db.utils.ProgrammingError: 错误: 关系 "rest_framework_jwt_blacklistedtoken" 不存在
LINE 1: DELETE FROM "rest_framework_jwt_blacklistedtoken" WHERE "res...
查看drf-jwt项目发现,需要在setting中注册’rest_framework_jwt.blacklist’ app
INSTALLED_APPS = [
......
'rest_framework_jwt',
'rest_framework_jwt.blacklist',
]