2024年11月22日 18:20修改
例句
1.老师要发掘学生的潜力,然后根据其特长进行培养。
2.大学生村官发挥专业特长,帮助农民解决了许多困难。
1. 特别擅长。
引
1. 唐人特长近体,青莲缺焉。
明
《诗薮·唐下》
胡应麟
2. 特有的长处。
引
1. 这人却似乎正因为这些品貌上的特长,把一生毁了。
《会明》
沈从文
2. 相声离不开讽刺,讽刺是相声的特长。
《我和相声》
侯宝林
get() returned more than one TaMiApiConutModel -- it returned 3!
Request Method: | GET |
---|---|
Request URL: | http://127.0.0.1:443/mitacontent/?keyword=%E7%89%B9%E9%95%BF%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D&password=1433744303 |
Django Version: | 4.2.14 |
Exception Type: | MultipleObjectsReturned |
Exception Value: | get() returned more than one TaMiApiConutModel -- it returned 3! |
Exception Location: | /www/server/pyporject_evn/backend_venv/lib/python3.10/site-packages/django/db/models/query.py, line 640, in get |
Raised during: | zhandian.views.MITaAIViews.MiTaContents |
Python Executable: | /www/server/pyporject_evn/backend_venv/bin/python |
Python Version: | 3.10.1 |
Python Path: | ['/www/wwwroot/xiezuo/backend', '/www/wwwroot/xiezuo/backend/plugins', '/www/wwwroot/xiezuo/backend', '/www/server/pyporject_evn/backend_venv/lib/python310.zip', '/www/server/pyporject_evn/backend_venv/lib/python3.10', '/www/server/pyporject_evn/backend_venv/lib/python3.10/lib-dynload', '/www/server/pyporject_evn/backend_venv/lib/python3.10/site-packages', '/www/server/pyporject_evn/backend_venv/lib/python3.10/site-packages/setuptools/_vendor'] |
Server time: | Fri, 22 Nov 2024 18:20:02 +0800 |
/www/server/pyporject_evn/backend_venv/lib/python3.10/site-packages/django/core/handlers/exception.py
, line 55, in inner return inner
else:
@wraps(get_response)
def inner(request):
try:
response = get_response(request)…
except Exception as exc:
response = response_for_exception(request, exc)
return response
return inner
Variable | Value |
---|---|
exc | MultipleObjectsReturned('get() returned more than one TaMiApiConutModel -- it returned 3!') |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7fdb7b131720>> |
request | <WSGIRequest: GET '/mitacontent/?keyword=%E7%89%B9%E9%95%BF%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D&password=1433744303'> |
/www/server/pyporject_evn/backend_venv/lib/python3.10/site-packages/django/core/handlers/base.py
, line 197, in _get_response if response is None:
wrapped_callback = self.make_view_atomic(callback)
# If it is an asynchronous view, run it in a subthread.
if iscoroutinefunction(wrapped_callback):
wrapped_callback = async_to_sync(wrapped_callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)…
except Exception as e:
response = self.process_exception_by_middleware(e, request)
if response is None:
raise
# Complain if the view returned None (a common error).
Variable | Value |
---|---|
callback | <function MiTaContents at 0x7fdb739a2d40> |
callback_args | () |
callback_kwargs | {} |
middleware_method | <bound method ApiLoggingMiddleware.process_view of <ApiLoggingMiddleware get_response=BaseHandler._get_response>> |
request | <WSGIRequest: GET '/mitacontent/?keyword=%E7%89%B9%E9%95%BF%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D&password=1433744303'> |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7fdb7b131720> |
wrapped_callback | <function MiTaContents at 0x7fdb739a2d40> |
/www/wwwroot/xiezuo/backend/zhandian/views/MITaAIViews.py
, line 66, in MiTaContents def MiTaContents(request):
# 获取关键词
keyword = request.GET.get('keyword')
password = request.GET.get('password')
if password != '1433744303' or keyword == None:
return HttpResponse("")
content = MiTaContent(keyword)…
# 返回生成的内容
return HttpResponse(content)
Variable | Value |
---|---|
keyword | '特长是什么意思' |
password | '1433744303' |
request | <WSGIRequest: GET '/mitacontent/?keyword=%E7%89%B9%E9%95%BF%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D&password=1433744303'> |
/www/wwwroot/xiezuo/backend/plugins/MiTaAi.py
, line 22, in MiTaContent # 获取接口 状态为正常
MiTaapi = TaMiModel.objects.filter(status=True)
ApiInfo = random.choice(MiTaapi)
today = timezone.now().date()
# 今日的统计数量
# 获取或创建今日的统计记录
count_record, created = TaMiApiConutModel.objects.get_or_create(…
TaMi=ApiInfo,
record_date=today,
defaults={'count': 0} # 如果记录是新创建的,初始 count 为 0
)
if count_record.count >= 100:
continue
Variable | Value |
---|---|
ApiInfo | <TaMiModel: TaMiModel object (2)> |
MiTaapi | <QuerySet [<TaMiModel: TaMiModel object (2)>, <TaMiModel: TaMiModel object (3)>, <TaMiModel: TaMiModel object (4)>, <TaMiModel: TaMiModel object (5)>, <TaMiModel: TaMiModel object (6)>, <TaMiModel: TaMiModel object (7)>, <TaMiModel: TaMiModel object (8)>]> |
a | 0 |
keyword | '特长是什么意思' |
today | datetime.date(2024, 11, 22) |
/www/server/pyporject_evn/backend_venv/lib/python3.10/site-packages/django/db/models/manager.py
, line 87, in manager_method return []
@classmethod
def _get_queryset_methods(cls, queryset_class):
def create_method(name, method):
@wraps(method)
def manager_method(self, *args, **kwargs):
return getattr(self.get_queryset(), name)(*args, **kwargs)…
return manager_method
new_methods = {}
for name, method in inspect.getmembers(
queryset_class, predicate=inspect.isfunction
Variable | Value |
---|---|
args | () |
kwargs | {'TaMi': <TaMiModel: TaMiModel object (2)>, 'defaults': {'count': 0}, 'record_date': datetime.date(2024, 11, 22)} |
name | 'get_or_create' |
self | <django.db.models.manager.Manager object at 0x7fdb79d80700> |
/www/server/pyporject_evn/backend_venv/lib/python3.10/site-packages/django/db/models/query.py
, line 916, in get_or_create Return a tuple of (object, created), where created is a boolean
specifying whether an object was created.
"""
# The get() needs to be targeted at the write database in order
# to avoid potential transaction consistency problems.
self._for_write = True
try:
return self.get(**kwargs), False…
except self.model.DoesNotExist:
params = self._extract_model_params(defaults, **kwargs)
# Try to create an object using passed params.
try:
with transaction.atomic(using=self.db):
params = dict(resolve_callables(params))
Variable | Value |
---|---|
defaults | {'count': 0} |
kwargs | {'TaMi': <TaMiModel: TaMiModel object (2)>, 'record_date': datetime.date(2024, 11, 22)} |
self | <QuerySet [<TaMiApiConutModel: TaMiApiConutModel object (5)>, <TaMiApiConutModel: TaMiApiConutModel object (6)>, <TaMiApiConutModel: TaMiApiConutModel object (7)>, <TaMiApiConutModel: TaMiApiConutModel object (8)>, <TaMiApiConutModel: TaMiApiConutModel object (9)>, <TaMiApiConutModel: TaMiApiConutModel object (10)>, <TaMiApiConutModel: TaMiApiConutModel object (11)>, <TaMiApiConutModel: TaMiApiConutModel object (12)>, <TaMiApiConutModel: TaMiApiConutModel object (13)>]> |
/www/server/pyporject_evn/backend_venv/lib/python3.10/site-packages/django/db/models/query.py
, line 640, in get num = len(clone)
if num == 1:
return clone._result_cache[0]
if not num:
raise self.model.DoesNotExist(
"%s matching query does not exist." % self.model._meta.object_name
)
raise self.model.MultipleObjectsReturned(…
"get() returned more than one %s -- it returned %s!"
% (
self.model._meta.object_name,
num if not limit or num < limit else "more than %s" % (limit - 1),
)
)
Variable | Value |
---|---|
args | () |
clone | <QuerySet [<TaMiApiConutModel: TaMiApiConutModel object (5)>, <TaMiApiConutModel: TaMiApiConutModel object (6)>, <TaMiApiConutModel: TaMiApiConutModel object (7)>]> |
kwargs | {'TaMi': <TaMiModel: TaMiModel object (2)>, 'record_date': datetime.date(2024, 11, 22)} |
limit | 21 |
num | 3 |
self | <QuerySet [<TaMiApiConutModel: TaMiApiConutModel object (5)>, <TaMiApiConutModel: TaMiApiConutModel object (6)>, <TaMiApiConutModel: TaMiApiConutModel object (7)>, <TaMiApiConutModel: TaMiApiConutModel object (8)>, <TaMiApiConutModel: TaMiApiConutModel object (9)>, <TaMiApiConutModel: TaMiApiConutModel object (10)>, <TaMiApiConutModel: TaMiApiConutModel object (11)>, <TaMiApiConutModel: TaMiApiConutModel object (12)>, <TaMiApiConutModel: TaMiApiConutModel object (13)>]> |
AnonymousUser
Variable | Value |
---|---|
keyword | '特长是什么意思' |
password | '1433744303' |
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
BT_TASK | '1' |
CONTENT_LENGTH | '' |
CONTENT_TYPE | 'text/plain' |
DJANGO_SETTINGS_MODULE | 'application.settings' |
GATEWAY_INTERFACE | 'CGI/1.1' |
HOME | '/root' |
HTTP_ACCEPT | '*/*' |
HTTP_ACCEPT_ENCODING | 'gzip, deflate' |
HTTP_CONNECTION | 'upgrade' |
HTTP_HOST | '127.0.0.1:443' |
HTTP_USER_AGENT | 'python-requests/2.31.0' |
HTTP_X_FORWARDED_FOR | '8.212.45.8' |
HTTP_X_HOST | 'xiezuoapi.junyilawyer.cn:443' |
HTTP_X_REAL_IP | '8.212.45.8' |
HTTP_X_SCHEME | 'https' |
LANG | 'en_US.UTF-8' |
LOGNAME | 'root' |
LS_COLORS | 'rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=00:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.avif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:*~=00;90:*#=00;90:*.bak=00;90:*.crdownload=00;90:*.dpkg-dist=00;90:*.dpkg-new=00;90:*.dpkg-old=00;90:*.dpkg-tmp=00;90:*.old=00;90:*.orig=00;90:*.part=00;90:*.rej=00;90:*.rpmnew=00;90:*.rpmorig=00;90:*.rpmsave=00;90:*.swp=00;90:*.tmp=00;90:*.ucf-dist=00;90:*.ucf-new=00;90:*.ucf-old=00;90:' |
'/var/mail/root' | |
OLDPWD | '/www/server/panel' |
PATH | '/www/server/pyporject_evn/backend_venv/bin:/www/wwwroot/xiezuo/backend:/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/root/bin' |
PATH_INFO | '/mitacontent/' |
PWD | '/www/wwwroot/xiezuo/backend' |
QUERY_STRING | 'keyword=%E7%89%B9%E9%95%BF%E6%98%AF%E4%BB%80%E4%B9%88%E6%84%8F%E6%80%9D&password=1433744303' |
REMOTE_ADDR | '127.0.0.1' |
REMOTE_HOST | '' |
REQUEST_METHOD | 'GET' |
RUN_MAIN | 'true' |
SCRIPT_NAME | '' |
SERVER_NAME | 'iZj6c7hfcrzsmklgjk9bphZ' |
SERVER_PORT | '8002' |
SERVER_PROTOCOL | 'HTTP/1.1' |
SERVER_SOFTWARE | 'WSGIServer/0.2' |
SHELL | '/bin/bash' |
SHLVL | '2' |
SUDO_COMMAND | '/usr/bin/bash install.sh' |
SUDO_GID | '0' |
SUDO_UID | '0' |
SUDO_USER | 'root' |
TERM | 'xterm-256color' |
TZ | 'Asia/Shanghai' |
USER | 'root' |
VIRTUAL_ENV | '/www/server/panel/pyenv' |
_ | '/bin/nohup' |
wsgi.errors | <colorama.ansitowin32.StreamWrapper object at 0x7fdb7c068160> |
wsgi.file_wrapper | <class 'wsgiref.util.FileWrapper'> |
wsgi.input | <django.core.handlers.wsgi.LimitedStream object at 0x7fdb717bcca0> |
wsgi.multiprocess | False |
wsgi.multithread | True |
wsgi.run_once | False |
wsgi.url_scheme | 'http' |
wsgi.version | (1, 0) |
application.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [] |
ALLOWED_HOSTS | ['*'] |
ALL_MODELS_OBJECTS | [] |
API_LOG_ENABLE | '********************' |
API_LOG_METHODS | '********************' |
API_MODEL_MAP | '********************' |
APPEND_SLASH | True |
ASGI_APPLICATION | 'application.asgi.application' |
AUTHENTICATION_BACKENDS | ['dvadmin.utils.backends.CustomBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'system.Users' |
BASE_DIR | PosixPath('/www/wwwroot/xiezuo/backend') |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CAPTCHA_BACKGROUND_COLOR | '#F5F7F4' |
CAPTCHA_CHALLENGE_FUNCT | 'captcha.helpers.math_challenge' |
CAPTCHA_FONT_SIZE | 36 |
CAPTCHA_FOREGROUND_COLOR | '#64DAAA' |
CAPTCHA_IMAGE_SIZE | (160, 46) |
CAPTCHA_LENGTH | 4 |
CAPTCHA_NOISE_FUNCTIONS | ('captcha.helpers.noise_arcs',) |
CAPTCHA_OUTPUT_FORMAT | '%(image)s %(text_field)s %(hidden_field)s ' |
CAPTCHA_TIMEOUT | 1 |
CELERY_BROKER_DB | 3 |
CELERY_TIMEZONE | 'Asia/Shanghai' |
CHANNEL_LAYERS | {'default': {'BACKEND': 'channels.layers.InMemoryChannelLayer'}} |
COLUMN_EXCLUDE_APPS | ['channels', 'captcha'] |
CONSOLE_LOG_FORMAT | '[%(asctime)s][%(name)s.%(funcName)s():%(lineno)d] [%(levelname)s] %(message)s' |
CORS_ALLOW_CREDENTIALS | True |
CORS_ORIGIN_ALLOW_ALL | True |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | False |
CSRF_COOKIE_MASKED | False |
CSRF_COOKIE_NAME | 'csrftoken' |
CSRF_COOKIE_PATH | '/' |
CSRF_COOKIE_SAMESITE | 'Lax' |
CSRF_COOKIE_SECURE | False |
CSRF_FAILURE_VIEW | 'django.views.csrf.csrf_failure' |
CSRF_HEADER_NAME | 'HTTP_X_CSRFTOKEN' |
CSRF_TRUSTED_ORIGINS | [] |
CSRF_USE_SESSIONS | False |
DATABASES | {'default': {'ATOMIC_REQUESTS': False, 'AUTOCOMMIT': True, 'CONN_HEALTH_CHECKS': False, 'CONN_MAX_AGE': 0, 'ENGINE': 'django.db.backends.mysql', 'HOST': 'rm-j6c1phy9e1c7s9z6i.mysql.rds.aliyuncs.com', 'NAME': 'xiezuo', 'OPTIONS': {'connect_timeout': 10}, 'PASSWORD': '********************', 'PORT': 3306, 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIGRATE': True, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': 'xiezuo'}} |
DATABASE_ENGINE | 'django.db.backends.mysql' |
DATABASE_HOST | 'rm-j6c1phy9e1c7s9z6i.mysql.rds.aliyuncs.com' |
DATABASE_NAME | 'xiezuo' |
DATABASE_PASSWORD | '********************' |
DATABASE_PORT | 3306 |
DATABASE_ROUTERS | [] |
DATABASE_USER | 'xiezuo' |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
DATA_UPLOAD_MAX_NUMBER_FILES | 100 |
DATETIME_FORMAT | 'N j, Y, P' |
DATETIME_INPUT_FORMATS | ['%Y-%m-%d %H:%M:%S', '%Y-%m-%d %H:%M:%S.%f', '%Y-%m-%d %H:%M', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M'] |
DATE_FORMAT | 'N j, Y' |
DATE_INPUT_FORMATS | ['%Y-%m-%d', '%m/%d/%Y', '%m/%d/%y', '%b %d %Y', '%b %d, %Y', '%d %b %Y', '%d %b, %Y', '%B %d %Y', '%B %d, %Y', '%d %B %Y', '%d %B, %Y'] |
DEBUG | True |
DEBUG_PROPAGATE_EXCEPTIONS | False |
DECIMAL_SEPARATOR | '.' |
DEFAULT_AUTO_FIELD | 'django.db.models.AutoField' |
DEFAULT_CHARSET | 'utf-8' |
DEFAULT_EXCEPTION_REPORTER | 'django.views.debug.ExceptionReporter' |
DEFAULT_EXCEPTION_REPORTER_FILTER | 'django.views.debug.SafeExceptionReporterFilter' |
DEFAULT_FILE_STORAGE | 'django.core.files.storage.FileSystemStorage' |
DEFAULT_FROM_EMAIL | 'webmaster@localhost' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DICTIONARY_CONFIG | {'button_status_bool': {'children': [{'color': 'success', 'label': '启用', 'type': 6, 'value': 'true'}, {'color': 'danger', 'label': '禁用', 'type': 6, 'value': 'false'}], 'id': 1, 'value': 'button_status_bool'}, 'button_status_number': {'children': [{'color': 'success', 'label': '启用', 'type': 1, 'value': '1'}, {'color': 'danger', 'label': '禁用', 'type': 1, 'value': '0'}], 'id': 13, 'value': 'button_status_number'}, 'button_whether_bool': {'children': [{'color': 'success', 'label': '是', 'type': 6, 'value': 'true'}, {'color': 'danger', 'label': '否', 'type': 6, 'value': 'false'}], 'id': 16, 'value': 'button_whether_bool'}, 'button_whether_number': {'children': [{'color': 'success', 'label': '是', 'type': 1, 'value': '1'}, {'color': 'danger', 'label': '否', 'type': 1, 'value': '2'}], 'id': 19, 'value': 'button_whether_number'}, 'config_form_type': {'children': [{'color': None, 'label': 'text', 'type': 1, 'value': '0'}, {'color': '', 'label': 'textarea', 'type': 1, 'value': '3'}, {'color': '', 'label': 'number', 'type': 1, 'value': '10'}, {'color': None, 'label': 'datetime', 'type': 1, 'value': '1'}, {'color': None, 'label': 'date', 'type': 1, 'value': '2'}, {'color': '', 'label': 'time', 'type': 1, 'value': '15'}, {'color': None, 'label': 'select', 'type': 1, 'value': '4'}, {'color': None, 'label': 'checkbox', 'type': 1, 'value': '5'}, {'color': None, 'label': 'radio', 'type': 1, 'value': '6'}, {'color': '', 'label': 'switch', 'type': 1, 'value': '9'}, {'color': '', 'label': '文件附件', 'type': 1, 'value': '8'}, {'color': '', 'label': '图片(单张)', 'type': 1, 'value': '7'}, {'color': '', 'label': '图片(多张)', 'type': 1, 'value': '12'}, {'color': '', 'label': '数组', 'type': 1, 'value': '11'}, {'color': '', 'label': '关联表', 'type': 1, 'value': '13'}, {'color': '', 'label': '关联表(多选)', 'type': 1, 'value': '14'}], 'id': 25, 'value': 'config_form_type'}, 'gender': {'children': [{'color': None, 'label': '未知', 'type': 1, 'value': '0'}, {'color': None, 'label': '男', 'type': 1, 'value': '1'}, {'color': None, 'label': '女', 'type': 1, 'value': '2'}], 'id': 42, 'value': 'gender'}, 'system_button': {'children': [{'color': 'success', 'label': '新增', 'type': 0, 'value': 'Create'}, {'color': 'primary', 'label': '编辑', 'type': 0, 'value': 'Update'}, {'color': 'danger', 'label': '删除', 'type': 0, 'value': 'Delete'}, {'color': 'info', 'label': '详情', 'type': 0, 'value': 'Retrieve'}, {'color': 'warning', 'label': '查询', 'type': 0, 'value': 'Search'}, {'color': 'success', 'label': '保存', 'type': 0, 'value': 'Save'}, {'color': 'primary', 'label': '导入', 'type': 0, 'value': 'Import'}, {'color': 'warning', 'label': '导出', 'type': 0, 'value': 'Export'}], 'id': 4, 'value': 'system_button'}, 'user_type': {'children': [{'color': None, 'label': '后台用户', 'type': 1, 'value': '0'}, {'color': None, 'label': '前台用户', 'type': 1, 'value': '1'}], 'id': 22, 'value': 'user_type'}} |
DISALLOWED_USER_AGENTS | [] |
DJANGO_CELERY_BEAT_TZ_AWARE | False |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_HOST | 'localhost' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | '' |
EMAIL_PORT | 25 |
EMAIL_SSL_CERTFILE | None |
EMAIL_SSL_KEYFILE | '********************' |
EMAIL_SUBJECT_PREFIX | '[Django] ' |
EMAIL_TIMEOUT | None |
EMAIL_USE_LOCALTIME | False |
EMAIL_USE_SSL | False |
EMAIL_USE_TLS | False |
ENABLE_LOGIN_ANALYSIS_LOG | True |
ERROR_LOGS_FILE | '/www/wwwroot/xiezuo/backend/logs/error.log' |
FILE_UPLOAD_DIRECTORY_PERMISSIONS | None |
FILE_UPLOAD_HANDLERS | ['django.core.files.uploadhandler.MemoryFileUploadHandler', 'django.core.files.uploadhandler.TemporaryFileUploadHandler'] |
FILE_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
FILE_UPLOAD_PERMISSIONS | 420 |
FILE_UPLOAD_TEMP_DIR | None |
FIRST_DAY_OF_WEEK | 0 |
FIXTURE_DIRS | [] |
FORCE_SCRIPT_NAME | None |
FORMAT_MODULE_PATH | None |
FORM_RENDERER | 'django.forms.renderers.DjangoTemplates' |
HOST | 'https://xiezuoapi.junyilawyer.cn' |
IGNORABLE_404_URLS | [] |
INITIALIZE_LIST | [] |
INITIALIZE_RESET_LIST | [] |
INSTALLED_APPS | ['django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django_comment_migrate', 'rest_framework', 'django_filters', 'corsheaders', 'drf_yasg', 'captcha', 'channels', 'dvadmin.system', 'zhandian'] |
INTERNAL_IPS | [] |
LANGUAGES | [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ar-dz', 'Algerian Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('ckb', 'Central Kurdish (Sorani)'), ('cs', 'Czech'), ('cy', 'Welsh'), ('da', 'Danish'), ('de', 'German'), ('dsb', 'Lower Sorbian'), ('el', 'Greek'), ('en', 'English'), ('en-au', 'Australian English'), ('en-gb', 'British English'), ('eo', 'Esperanto'), ('es', 'Spanish'), ('es-ar', 'Argentinian Spanish'), ('es-co', 'Colombian Spanish'), ('es-mx', 'Mexican Spanish'), ('es-ni', 'Nicaraguan Spanish'), ('es-ve', 'Venezuelan Spanish'), ('et', 'Estonian'), ('eu', 'Basque'), ('fa', 'Persian'), ('fi', 'Finnish'), ('fr', 'French'), ('fy', 'Frisian'), ('ga', 'Irish'), ('gd', 'Scottish Gaelic'), ('gl', 'Galician'), ('he', 'Hebrew'), ('hi', 'Hindi'), ('hr', 'Croatian'), ('hsb', 'Upper Sorbian'), ('hu', 'Hungarian'), ('hy', 'Armenian'), ('ia', 'Interlingua'), ('id', 'Indonesian'), ('ig', 'Igbo'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kab', 'Kabyle'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('ky', 'Kyrgyz'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('ms', 'Malay'), ('my', 'Burmese'), ('nb', 'Norwegian Bokmål'), ('ne', 'Nepali'), ('nl', 'Dutch'), ('nn', 'Norwegian Nynorsk'), ('os', 'Ossetic'), ('pa', 'Punjabi'), ('pl', 'Polish'), ('pt', 'Portuguese'), ('pt-br', 'Brazilian Portuguese'), ('ro', 'Romanian'), ('ru', 'Russian'), ('sk', 'Slovak'), ('sl', 'Slovenian'), ('sq', 'Albanian'), ('sr', 'Serbian'), ('sr-latn', 'Serbian Latin'), ('sv', 'Swedish'), ('sw', 'Swahili'), ('ta', 'Tamil'), ('te', 'Telugu'), ('tg', 'Tajik'), ('th', 'Thai'), ('tk', 'Turkmen'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('uz', 'Uzbek'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')] |
LANGUAGES_BIDI | ['he', 'ar', 'ar-dz', 'ckb', 'fa', 'ur'] |
LANGUAGE_CODE | 'zh-hans' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_HTTPONLY | False |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LANGUAGE_COOKIE_SAMESITE | None |
LANGUAGE_COOKIE_SECURE | False |
LOCALE_PATHS | [] |
LOGGING | {'disable_existing_loggers': False, 'formatters': {'console': {'datefmt': '%Y-%m-%d %H:%M:%S', 'format': '[%(asctime)s][%(name)s.%(funcName)s():%(lineno)d] ' '[%(levelname)s] %(message)s'}, 'file': {'datefmt': '%Y-%m-%d %H:%M:%S', 'format': '[%(asctime)s][%(name)s.%(funcName)s():%(lineno)d] ' '[%(levelname)s] %(message)s'}, 'standard': {'format': '[%(asctime)s][%(name)s.%(funcName)s():%(lineno)d] ' '[%(levelname)s] %(message)s'}}, 'handlers': {'console': {'class': 'logging.StreamHandler', 'formatter': 'console', 'level': 'INFO'}, 'error': {'backupCount': 3, 'class': 'logging.handlers.RotatingFileHandler', 'encoding': 'utf-8', 'filename': '/www/wwwroot/xiezuo/backend/logs/error.log', 'formatter': 'standard', 'level': 'ERROR', 'maxBytes': 104857600}, 'file': {'backupCount': 5, 'class': 'logging.handlers.RotatingFileHandler', 'encoding': 'utf-8', 'filename': '/www/wwwroot/xiezuo/backend/logs/server.log', 'formatter': 'standard', 'level': 'INFO', 'maxBytes': 104857600}}, 'loggers': {'': {'handlers': ['console', 'error', 'file'], 'level': 'INFO'}, 'django': {'handlers': ['console', 'error', 'file'], 'level': 'INFO', 'propagate': False}, 'django.db.backends': {'handlers': ['console', 'error', 'file'], 'level': 'INFO', 'propagate': False}, 'uvicorn.access': {'handlers': ['console', 'error', 'file'], 'level': 'INFO'}, 'uvicorn.error': {'handlers': ['console', 'error', 'file'], 'level': 'INFO'}}, 'version': 1} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_NO_CAPTCHA_AUTH | True |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
LOGS_FILE | '/www/wwwroot/xiezuo/backend/logs' |
MANAGERS | [] |
MEDIA_ROOT | 'media' |
MEDIA_URL | '/media/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['dvadmin.utils.middleware.HealthCheckMiddleware', 'django.middleware.security.SecurityMiddleware', 'whitenoise.middleware.WhiteNoiseMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'corsheaders.middleware.CorsMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'dvadmin.utils.middleware.ApiLoggingMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT | '********************' |
PLUGINS_PATH | '/www/wwwroot/xiezuo/backend/plugins' |
PLUGINS_URL_PATTERNS | [] |
PREPEND_WWW | False |
REDIS_DB | 2 |
REDIS_HOST | '127.0.0.1' |
REDIS_PASSWORD | '********************' |
REDIS_URL | 'redis://:1433744303@127.0.0.1:6379' |
REST_FRAMEWORK | {'DATETIME_FORMAT': '%Y-%m-%d %H:%M:%S', 'DATE_FORMAT': '%Y-%m-%d', 'DEFAULT_AUTHENTICATION_CLASSES': ('rest_framework_simplejwt.authentication.JWTAuthentication', 'rest_framework.authentication.SessionAuthentication'), 'DEFAULT_FILTER_BACKENDS': ('dvadmin.utils.filters.CustomDjangoFilterBackend', 'rest_framework.filters.SearchFilter', 'rest_framework.filters.OrderingFilter'), 'DEFAULT_PAGINATION_CLASS': 'dvadmin.utils.pagination.CustomPagination', 'DEFAULT_PARSER_CLASSES': ('rest_framework.parsers.JSONParser', 'rest_framework.parsers.MultiPartParser'), 'DEFAULT_PERMISSION_CLASSES': ['rest_framework.permissions.IsAuthenticated'], 'EXCEPTION_HANDLER': 'dvadmin.utils.exception.CustomExceptionHandler'} |
ROOT_URLCONF | 'application.urls' |
SECRET_KEY | '********************' |
SECRET_KEY_FALLBACKS | '********************' |
SECURE_CONTENT_TYPE_NOSNIFF | True |
SECURE_CROSS_ORIGIN_OPENER_POLICY | 'same-origin' |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | None |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_REFERRER_POLICY | 'same-origin' |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | 'root@localhost' |
SERVER_LOGS_FILE | '/www/wwwroot/xiezuo/backend/logs/server.log' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 1209600 |
SESSION_COOKIE_DOMAIN | None |
SESSION_COOKIE_HTTPONLY | True |
SESSION_COOKIE_NAME | 'sessionid' |
SESSION_COOKIE_PATH | '/' |
SESSION_COOKIE_SAMESITE | 'Lax' |
SESSION_COOKIE_SECURE | False |
SESSION_ENGINE | 'django.contrib.sessions.backends.db' |
SESSION_EXPIRE_AT_BROWSER_CLOSE | False |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | False |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'application.settings' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SIMPLE_JWT | {'ACCESS_TOKEN_LIFETIME': '********************', 'AUTH_HEADER_TYPES': ('JWT',), 'REFRESH_TOKEN_LIFETIME': '********************', 'ROTATE_REFRESH_TOKENS': '********************'} |
STANDARD_LOG_FORMAT | '[%(asctime)s][%(name)s.%(funcName)s():%(lineno)d] [%(levelname)s] %(message)s' |
STATICFILES_DIRS | ['/www/wwwroot/xiezuo/backend/static'] |
STATICFILES_FINDERS | ('django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder') |
STATICFILES_STORAGE | 'whitenoise.storage.CompressedStaticFilesStorage' |
STATIC_ROOT | None |
STATIC_URL | '/static/' |
STORAGES | {'default': {'BACKEND': 'django.core.files.storage.FileSystemStorage'}, 'staticfiles': {'BACKEND': 'whitenoise.storage.CompressedStaticFilesStorage'}} |
SWAGGER_SETTINGS | {'APIS_SORTER': '********************', 'AUTO_SCHEMA_TYPE': 2, 'DEFAULT_AUTO_SCHEMA_CLASS': 'dvadmin.utils.swagger.CustomSwaggerAutoSchema', 'JSON_EDITOR': True, 'LOGIN_URL': 'apiLogin/', 'LOGOUT_URL': 'rest_framework:logout', 'OPERATIONS_SORTER': 'alpha', 'SECURITY_DEFINITIONS': {'basic': {'type': 'basic'}}, 'VALIDATOR_URL': None} |
SYSTEM_CONFIG | {'base.captcha_state': True, 'base.default_password': '********************', 'base.web_favicon': '', 'base.web_title': '智能写作平台', 'login.clause_url': '', 'login.copyright': '1', 'login.help_url': '', 'login.keep_record': '1', 'login.login_background': None, 'login.privacy_url': '', 'login.site_logo': None, 'login.site_name': '写作管理系统', 'login.site_title': '写作管理'} |
TABLE_PREFIX | 'dvadmin_' |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/www/wwwroot/xiezuo/backend/templates'], 'OPTIONS': {'context_processors': ['django.template.context_processors.debug', 'django.template.context_processors.request', 'django.contrib.auth.context_processors.auth', 'django.contrib.messages.context_processors.messages']}}] |
TENANT_SHARED_APPS | [] |
TEST_NON_SERIALIZED_APPS | [] |
TEST_RUNNER | 'django.test.runner.DiscoverRunner' |
THOUSAND_SEPARATOR | ',' |
TIME_FORMAT | 'P' |
TIME_INPUT_FORMATS | ['%H:%M:%S', '%H:%M:%S.%f', '%H:%M'] |
TIME_ZONE | 'Asia/Shanghai' |
USERNAME_FIELD | 'username' |
USE_DEPRECATED_PYTZ | False |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | False |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WSGI_APPLICATION | 'application.wsgi.application' |
X_FRAME_OPTIONS | 'DENY' |
YEAR_MONTH_FORMAT | 'F Y' |
You’re seeing this error because you have DEBUG = True
in your Django settings file. Change that to False
, and Django will display a standard page generated by the handler for this status code.