'search_articles' received multiple values for keyword argument 'user'
Request Method: | GET |
---|---|
Request URL: | http://www.gwyx123.com/lists/15 |
Django Version: | 2.2.17 |
Exception Type: | TemplateSyntaxError |
Exception Value: | 'search_articles' received multiple values for keyword argument 'user' |
Exception Location: | /usr/local/lib/python3.8/site-packages/django/template/library.py in parse_bits, line 271 |
Python Executable: | /usr/local/bin/uwsgi |
Python Version: | 3.8.1 |
Python Path: | ['/webroot/website', '.', '', '/usr/local/lib/python38.zip', '/usr/local/lib/python3.8', '/usr/local/lib/python3.8/lib-dynload', '/usr/local/lib/python3.8/site-packages'] |
Server time: | 星期二, 19 三月 2024 13:49:22 +0800 |
In template /webroot/website/cms/templates/gongwen/help_center.html
, error at line 22
12 | </div> |
---|---|
13 | </div> |
14 | |
15 | <!--帮助联系--> |
16 | <div class="bzlx"> |
17 | {% include "./help_menus.html" %} |
18 | <!--帮助中心列表--> |
19 | <div class="bzzxlb"> |
20 | <ul style="min-height:500px;"> |
21 | |
22 | {% search_articles user=user cid=18 page=page limit=limit show_flag=1 can_search=None user=user as artobj %} |
23 | {% for art in artobj.results %} |
24 | <li class="help-list"><a href="/article/{{ art.id}}.html"><span></span><p>{{ art.title }}</p></a></li> |
25 | {% endfor %} |
26 | </ul> |
27 | <!--分页样式--> |
28 | <div class="fyan"> |
29 | <ul> |
30 | {% paginator url='' keywords=keywords order_by=order_by total=artobj.total limit=limit page=page %} |
31 | </ul> |
32 | </div> |
/usr/local/lib/python3.8/site-packages/django/core/handlers/exception.py
in inner
This decorator is automatically applied to all middleware to ensure that
no middleware leaks an exception and that the next middleware in the stack
can rely on getting a response instead of an exception.
"""
@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 | TemplateSyntaxError("'search_articles' received multiple values for keyword argument 'user'") |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7f2b1e91c8e0>> |
request | <WSGIRequest: GET '/lists/15'> |
/usr/local/lib/python3.8/site-packages/django/core/handlers/base.py
in _get_response
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)
except Exception as e:
response = self.process_exception_by_middleware(e, request)…
# Complain if the view returned None (a common error).
if response is None:
if isinstance(callback, types.FunctionType): # FBV
view_name = callback.__name__
else: # CBV
Variable | Value |
---|---|
callback | <function cms_lists at 0x7f2b11f9d310> |
callback_args | () |
callback_kwargs | {'cid': 15} |
middleware_method | <bound method CorsMiddleware.process_view of <corsheaders.middleware.CorsMiddleware object at 0x7f2af9f302b0>> |
request | <WSGIRequest: GET '/lists/15'> |
resolver | <URLResolver 'website.urls' (None:None) '^/'> |
resolver_match | ResolverMatch(func=cms.views.cms_lists, args=(), kwargs={'cid': 15}, url_name=lists, app_names=['cms'], namespaces=['cms'], route=lists/<int:cid>) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f2b1e91c8e0> |
wrapped_callback | <function cms_lists at 0x7f2b11f9d310> |
/usr/local/lib/python3.8/site-packages/django/core/handlers/base.py
in _get_response
response = middleware_method(request, callback, callback_args, callback_kwargs)
if response:
break
if response is None:
wrapped_callback = self.make_view_atomic(callback)
try:
response = wrapped_callback(request, *callback_args, **callback_kwargs)…
except Exception as e:
response = self.process_exception_by_middleware(e, request)
# Complain if the view returned None (a common error).
if response is None:
if isinstance(callback, types.FunctionType): # FBV
Variable | Value |
---|---|
callback | <function cms_lists at 0x7f2b11f9d310> |
callback_args | () |
callback_kwargs | {'cid': 15} |
middleware_method | <bound method CorsMiddleware.process_view of <corsheaders.middleware.CorsMiddleware object at 0x7f2af9f302b0>> |
request | <WSGIRequest: GET '/lists/15'> |
resolver | <URLResolver 'website.urls' (None:None) '^/'> |
resolver_match | ResolverMatch(func=cms.views.cms_lists, args=(), kwargs={'cid': 15}, url_name=lists, app_names=['cms'], namespaces=['cms'], route=lists/<int:cid>) |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f2b1e91c8e0> |
wrapped_callback | <function cms_lists at 0x7f2b11f9d310> |
/webroot/website/cms/views.py
in cms_lists
'articles':articles,
}
if request.user_agent.is_mobile and cc.mobile_template and cc.mobile_template != 'default':
new_temp = cc.mobile_template.split('cms/templates/')[-1]
return render(request, new_temp, context)
if cc.template and cc.template != 'default':
new_temp = cc.template.split('cms/templates/')[-1]
return render(request, new_temp, context)…
return render(request, f'{query_temp_path(request,template_name)}/lists.html', context)
def cms_search(request):
'''搜索页面'''
order_by = request.GET.get('order_by') or 'recommend'
page = int(request.GET.get('page') or 1)
Variable | Value |
---|---|
articles | {'keywords': '', 'results': [], 'total': 0, 'word_too_much': False} |
breadcrumb | [{'title': '首页', 'url': '/'}, {'id': 18, 'title': '帮助中心', 'url': '/lists/18'}, {'id': 15, 'title': '侵权投诉', 'url': '/lists/15'}] |
brother | [{'id': 55, 'title': '获取积分', 'title_class': None}, {'id': 56, 'title': '用户须知', 'title_class': None}, {'id': 13, 'title': '关于我们', 'title_class': None}, {'id': 14, 'title': '联系合作', 'title_class': None}, {'id': 17, 'title': '联系我们', 'title_class': None}, {'id': 16, 'title': '会员权益', 'title_class': None}, {'id': 15, 'title': '侵权投诉', 'title_class': None}] |
brothers | <QuerySet [<CmsCategory: CmsCategory object (55)>, <CmsCategory: CmsCategory object (56)>, <CmsCategory: CmsCategory object (13)>, <CmsCategory: CmsCategory object (14)>, <CmsCategory: CmsCategory object (17)>, <CmsCategory: CmsCategory object (16)>, <CmsCategory: CmsCategory object (15)>]> |
c | <CmsCategory: CmsCategory object (15)> |
cc | <CmsCategory: CmsCategory object (15)> |
child | [] |
children | <QuerySet []> |
cid | 15 |
context | {'articles': {'keywords': '', 'results': [], 'total': 0, 'word_too_much': False}, 'breadcrumb': [{'title': '首页', 'url': '/'}, {'id': 18, 'title': '帮助中心', 'url': '/lists/18'}, {'id': 15, 'title': '侵权投诉', 'url': '/lists/15'}], 'brother_category': [{'id': 55, 'title': '获取积分', 'title_class': None}, {'id': 56, 'title': '用户须知', 'title_class': None}, {'id': 13, 'title': '关于我们', 'title_class': None}, {'id': 14, 'title': '联系合作', 'title_class': None}, {'id': 17, 'title': '联系我们', 'title_class': None}, {'id': 16, 'title': '会员权益', 'title_class': None}, {'id': 15, 'title': '侵权投诉', 'title_class': None}], 'child_category': [], 'limit': 10, 'offset': 0, 'order_by': 'recommend', 'page': 1, 'select_category_id': 15, 'select_menu_id': 15, 'title': '侵权投诉'} |
limit | 10 |
new_temp | 'gongwen/help_center.html' |
offset | 0 |
order | 'recommend' |
page | 1 |
request | <WSGIRequest: GET '/lists/15'> |
select_menu_id | 15 |
total | 0 |
/usr/local/lib/python3.8/site-packages/django/shortcuts.py
in render
def render(request, template_name, context=None, content_type=None, status=None, using=None):
"""
Return a HttpResponse whose content is filled with the result of calling
django.template.loader.render_to_string() with the passed arguments.
"""
content = loader.render_to_string(template_name, context, request, using=using)…
return HttpResponse(content, content_type, status)
def redirect(to, *args, permanent=False, **kwargs):
"""
Return an HttpResponseRedirect to the appropriate URL for the arguments
Variable | Value |
---|---|
content_type | None |
context | {'articles': {'keywords': '', 'results': [], 'total': 0, 'word_too_much': False}, 'breadcrumb': [{'title': '首页', 'url': '/'}, {'id': 18, 'title': '帮助中心', 'url': '/lists/18'}, {'id': 15, 'title': '侵权投诉', 'url': '/lists/15'}], 'brother_category': [{'id': 55, 'title': '获取积分', 'title_class': None}, {'id': 56, 'title': '用户须知', 'title_class': None}, {'id': 13, 'title': '关于我们', 'title_class': None}, {'id': 14, 'title': '联系合作', 'title_class': None}, {'id': 17, 'title': '联系我们', 'title_class': None}, {'id': 16, 'title': '会员权益', 'title_class': None}, {'id': 15, 'title': '侵权投诉', 'title_class': None}], 'child_category': [], 'limit': 10, 'offset': 0, 'order_by': 'recommend', 'page': 1, 'select_category_id': 15, 'select_menu_id': 15, 'title': '侵权投诉'} |
request | <WSGIRequest: GET '/lists/15'> |
status | None |
template_name | 'gongwen/help_center.html' |
using | None |
/usr/local/lib/python3.8/site-packages/django/template/loader.py
in render_to_string
Load a template and render it with a context. Return a string.
template_name may be a string or a list of strings.
"""
if isinstance(template_name, (list, tuple)):
template = select_template(template_name, using=using)
else:
template = get_template(template_name, using=using)…
return template.render(context, request)
def _engine_list(using=None):
return engines.all() if using is None else [engines[using]]
Variable | Value |
---|---|
context | {'articles': {'keywords': '', 'results': [], 'total': 0, 'word_too_much': False}, 'breadcrumb': [{'title': '首页', 'url': '/'}, {'id': 18, 'title': '帮助中心', 'url': '/lists/18'}, {'id': 15, 'title': '侵权投诉', 'url': '/lists/15'}], 'brother_category': [{'id': 55, 'title': '获取积分', 'title_class': None}, {'id': 56, 'title': '用户须知', 'title_class': None}, {'id': 13, 'title': '关于我们', 'title_class': None}, {'id': 14, 'title': '联系合作', 'title_class': None}, {'id': 17, 'title': '联系我们', 'title_class': None}, {'id': 16, 'title': '会员权益', 'title_class': None}, {'id': 15, 'title': '侵权投诉', 'title_class': None}], 'child_category': [], 'limit': 10, 'offset': 0, 'order_by': 'recommend', 'page': 1, 'select_category_id': 15, 'select_menu_id': 15, 'title': '侵权投诉'} |
request | <WSGIRequest: GET '/lists/15'> |
template_name | 'gongwen/help_center.html' |
using | None |
/usr/local/lib/python3.8/site-packages/django/template/loader.py
in get_template
Raise TemplateDoesNotExist if no such template exists.
"""
chain = []
engines = _engine_list(using)
for engine in engines:
try:
return engine.get_template(template_name)…
except TemplateDoesNotExist as e:
chain.append(e)
raise TemplateDoesNotExist(template_name, chain=chain)
Variable | Value |
---|---|
chain | [] |
engine | <django.template.backends.django.DjangoTemplates object at 0x7f2b11bfb220> |
engines | [<django.template.backends.django.DjangoTemplates object at 0x7f2b11bfb220>] |
template_name | 'gongwen/help_center.html' |
using | None |
/usr/local/lib/python3.8/site-packages/django/template/backends/django.py
in get_template
self.engine = Engine(self.dirs, self.app_dirs, **options)
def from_string(self, template_code):
return Template(self.engine.from_string(template_code), self)
def get_template(self, template_name):
try:
return Template(self.engine.get_template(template_name), self)…
except TemplateDoesNotExist as exc:
reraise(exc, self)
def get_templatetag_libraries(self, custom_libraries):
"""
Return a collation of template tag libraries from installed
Variable | Value |
---|---|
self | <django.template.backends.django.DjangoTemplates object at 0x7f2b11bfb220> |
template_name | 'gongwen/help_center.html' |
/usr/local/lib/python3.8/site-packages/django/template/engine.py
in get_template
return Template(template_code, engine=self)
def get_template(self, template_name):
"""
Return a compiled Template object for the given template name,
handling template inheritance recursively.
"""
template, origin = self.find_template(template_name)…
if not hasattr(template, 'render'):
# template needs to be compiled
template = Template(template, origin, template_name, engine=self)
return template
def render_to_string(self, template_name, context=None):
Variable | Value |
---|---|
self | <django.template.engine.Engine object at 0x7f2b11c03a30> |
template_name | 'gongwen/help_center.html' |
/usr/local/lib/python3.8/site-packages/django/template/engine.py
in find_template
raise ImproperlyConfigured(
"Invalid value in template loaders configuration: %r" % loader)
def find_template(self, name, dirs=None, skip=None):
tried = []
for loader in self.template_loaders:
try:
template = loader.get_template(name, skip=skip)…
return template, template.origin
except TemplateDoesNotExist as e:
tried.extend(e.tried)
raise TemplateDoesNotExist(name, tried=tried)
def from_string(self, template_code):
Variable | Value |
---|---|
dirs | None |
loader | <django.template.loaders.app_directories.Loader object at 0x7f2af9ec6be0> |
name | 'gongwen/help_center.html' |
self | <django.template.engine.Engine object at 0x7f2b11c03a30> |
skip | None |
tried | [(<django.template.base.Origin object at 0x7f2af9cfdb50>, 'Source does not exist')] |
/usr/local/lib/python3.8/site-packages/django/template/loaders/base.py
in get_template
try:
contents = self.get_contents(origin)
except TemplateDoesNotExist:
tried.append((origin, 'Source does not exist'))
continue
else:
return Template(…
contents, origin, origin.template_name, self.engine,
)
raise TemplateDoesNotExist(template_name, tried=tried)
def get_template_sources(self, template_name):
Variable | Value |
---|---|
contents | ('\n' '{% load cms_base_tags %} {% load static %} {% include "./header.html" %}\n' '<!--面包屑-->\n' '<div class="mbxie">\n' '\t<div class="mbxc">\n' ' \t<h3>当前位置:</h3>\n' ' <div class="ljj">\n' ' {% for item in breadcrumb%}\n' ' <a href="{{item.url}}">{{item.title}}</a><span>></span>\n' ' {% endfor %}\n' ' </div>\n' ' </div>\n' '</div>\n' '\n' '<!--帮助联系-->\n' '<div class="bzlx">\n' ' {% include "./help_menus.html" %}\n' ' <!--帮助中心列表-->\n' ' <div class="bzzxlb">\n' ' <ul style="min-height:500px;">\n' '\n' ' {% search_articles user=user cid=18 page=page limit=limit ' 'show_flag=1 can_search=None user=user as artobj %}\n' ' {% for art in artobj.results %}\n' ' <li class="help-list"><a href="/article/{{ ' 'art.id}}.html"><span></span><p>{{ art.title }}</p></a></li>\t\n' ' {% endfor %}\n' ' </ul>\n' ' <!--分页样式-->\n' ' <div class="fyan">\n' ' <ul>\n' " {% paginator url='' keywords=keywords order_by=order_by " 'total=artobj.total limit=limit page=page %}\n' ' </ul>\n' ' </div>\n' ' </div>\n' ' {% include "./footer_bottom.html" %}\n' '</div>\n' '\n' '</body>\n' '</html>\n') |
origin | <django.template.base.Origin object at 0x7f2af9cfd250> |
self | <django.template.loaders.app_directories.Loader object at 0x7f2af9ec6be0> |
skip | None |
template_name | 'gongwen/help_center.html' |
tried | [(<django.template.base.Origin object at 0x7f2af9cfd2b0>, 'Source does not exist')] |
/usr/local/lib/python3.8/site-packages/django/template/base.py
in __init__
engine = Engine.get_default()
if origin is None:
origin = Origin(UNKNOWN_SOURCE)
self.name = name
self.origin = origin
self.engine = engine
self.source = str(template_string) # May be lazy.
self.nodelist = self.compile_nodelist()…
def __iter__(self):
for node in self.nodelist:
yield from node
def _render(self, context):
Variable | Value |
---|---|
engine | <django.template.engine.Engine object at 0x7f2b11c03a30> |
name | 'gongwen/help_center.html' |
origin | <django.template.base.Origin object at 0x7f2af9cfd250> |
self | <django.template.base.Template object at 0x7f2af9cfd160> |
template_string | ('\n' '{% load cms_base_tags %} {% load static %} {% include "./header.html" %}\n' '<!--面包屑-->\n' '<div class="mbxie">\n' '\t<div class="mbxc">\n' ' \t<h3>当前位置:</h3>\n' ' <div class="ljj">\n' ' {% for item in breadcrumb%}\n' ' <a href="{{item.url}}">{{item.title}}</a><span>></span>\n' ' {% endfor %}\n' ' </div>\n' ' </div>\n' '</div>\n' '\n' '<!--帮助联系-->\n' '<div class="bzlx">\n' ' {% include "./help_menus.html" %}\n' ' <!--帮助中心列表-->\n' ' <div class="bzzxlb">\n' ' <ul style="min-height:500px;">\n' '\n' ' {% search_articles user=user cid=18 page=page limit=limit ' 'show_flag=1 can_search=None user=user as artobj %}\n' ' {% for art in artobj.results %}\n' ' <li class="help-list"><a href="/article/{{ ' 'art.id}}.html"><span></span><p>{{ art.title }}</p></a></li>\t\n' ' {% endfor %}\n' ' </ul>\n' ' <!--分页样式-->\n' ' <div class="fyan">\n' ' <ul>\n' " {% paginator url='' keywords=keywords order_by=order_by " 'total=artobj.total limit=limit page=page %}\n' ' </ul>\n' ' </div>\n' ' </div>\n' ' {% include "./footer_bottom.html" %}\n' '</div>\n' '\n' '</body>\n' '</html>\n') |
/usr/local/lib/python3.8/site-packages/django/template/base.py
in compile_nodelist
tokens = lexer.tokenize()
parser = Parser(
tokens, self.engine.template_libraries, self.engine.template_builtins,
self.origin,
)
try:
return parser.parse()…
except Exception as e:
if self.engine.debug:
e.template_debug = self.get_exception_info(e, e.token)
raise
def get_exception_info(self, exception, token):
Variable | Value |
---|---|
lexer | <django.template.base.DebugLexer object at 0x7f2af9cfd760> |
parser | <django.template.base.Parser object at 0x7f2af9c47f40> |
self | <django.template.base.Template object at 0x7f2af9cfd160> |
tokens | [<django.template.base.Token object at 0x7f2af9c475b0>, <django.template.base.Token object at 0x7f2af9c47e50>, <django.template.base.Token object at 0x7f2af9c47a00>, <django.template.base.Token object at 0x7f2af9c47400>, <django.template.base.Token object at 0x7f2af9c47bb0>, <django.template.base.Token object at 0x7f2af9c47af0>, <django.template.base.Token object at 0x7f2af9c47280>, <django.template.base.Token object at 0x7f2af9c47430>, <django.template.base.Token object at 0x7f2af9c47190>, <django.template.base.Token object at 0x7f2af9c47820>, <django.template.base.Token object at 0x7f2af9c47fd0>, <django.template.base.Token object at 0x7f2af9c470d0>, <django.template.base.Token object at 0x7f2af9cfd5b0>] |
/usr/local/lib/python3.8/site-packages/django/template/base.py
in parse
except KeyError:
self.invalid_block_tag(token, command, parse_until)
# Compile the callback into a node object and add it to
# the node list.
try:
compiled_result = compile_func(self, token)
except Exception as e:
raise self.error(token, e)…
self.extend_nodelist(nodelist, compiled_result, token)
# Compile success. Remove the token from the command stack.
self.command_stack.pop()
if parse_until:
self.unclosed_block_tag(parse_until)
return nodelist
Variable | Value |
---|---|
command | 'search_articles' |
compile_func | <function search_articles at 0x7f2af9ea8f70> |
compiled_result | <django.template.loader_tags.IncludeNode object at 0x7f2af9baa220> |
nodelist | [<TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7f2af9c47460>, <TextNode: ' '>, <django.template.defaulttags.LoadNode object at 0x7f2af9c479a0>, <TextNode: ' '>, <django.template.loader_tags.IncludeNode object at 0x7f2af9c47490>, <TextNode: '\n<!--面包屑-->\n<div class="m'>, <ForNode: for item in breadcrumb, tail_len: 5>, <TextNode: '\n </div>\n </div'>, <django.template.loader_tags.IncludeNode object at 0x7f2af9baa220>, <TextNode: '\n <!--帮助中心列表-->\n <d'>] |
parse_until | [] |
self | <django.template.base.Parser object at 0x7f2af9c47f40> |
token | <django.template.base.Token object at 0x7f2af9c47d90> |
/usr/local/lib/python3.8/site-packages/django/template/base.py
in parse
try:
compile_func = self.tags[command]
except KeyError:
self.invalid_block_tag(token, command, parse_until)
# Compile the callback into a node object and add it to
# the node list.
try:
compiled_result = compile_func(self, token)…
except Exception as e:
raise self.error(token, e)
self.extend_nodelist(nodelist, compiled_result, token)
# Compile success. Remove the token from the command stack.
self.command_stack.pop()
if parse_until:
Variable | Value |
---|---|
command | 'search_articles' |
compile_func | <function search_articles at 0x7f2af9ea8f70> |
compiled_result | <django.template.loader_tags.IncludeNode object at 0x7f2af9baa220> |
nodelist | [<TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7f2af9c47460>, <TextNode: ' '>, <django.template.defaulttags.LoadNode object at 0x7f2af9c479a0>, <TextNode: ' '>, <django.template.loader_tags.IncludeNode object at 0x7f2af9c47490>, <TextNode: '\n<!--面包屑-->\n<div class="m'>, <ForNode: for item in breadcrumb, tail_len: 5>, <TextNode: '\n </div>\n </div'>, <django.template.loader_tags.IncludeNode object at 0x7f2af9baa220>, <TextNode: '\n <!--帮助中心列表-->\n <d'>] |
parse_until | [] |
self | <django.template.base.Parser object at 0x7f2af9c47f40> |
token | <django.template.base.Token object at 0x7f2af9c47d90> |
/usr/local/lib/python3.8/site-packages/django/template/library.py
in compile_func
@functools.wraps(func)
def compile_func(parser, token):
bits = token.split_contents()[1:]
target_var = None
if len(bits) >= 2 and bits[-2] == 'as':
target_var = bits[-1]
bits = bits[:-2]
args, kwargs = parse_bits(…
parser, bits, params, varargs, varkw, defaults,
kwonly, kwonly_defaults, takes_context, function_name,
)
return SimpleNode(func, takes_context, args, kwargs, target_var)
self.tag(function_name, compile_func)
return func
Variable | Value |
---|---|
bits | ['user=user', 'cid=18', 'page=page', 'limit=limit', 'show_flag=1', 'can_search=None', 'user=user'] |
defaults | None |
func | <function search_articles at 0x7f2af9ea8dc0> |
function_name | 'search_articles' |
kwonly | [] |
kwonly_defaults | None |
params | [] |
parser | <django.template.base.Parser object at 0x7f2af9c47f40> |
takes_context | None |
target_var | 'artobj' |
token | <django.template.base.Token object at 0x7f2af9c47d90> |
varargs | None |
varkw | 'params' |
/usr/local/lib/python3.8/site-packages/django/template/library.py
in parse_bits
if param not in params and param not in unhandled_kwargs and varkw is None:
# An unexpected keyword argument was supplied
raise TemplateSyntaxError(
"'%s' received unexpected keyword argument '%s'" %
(name, param))
elif param in kwargs:
# The keyword argument has already been supplied once
raise TemplateSyntaxError(…
"'%s' received multiple values for keyword argument '%s'" %
(name, param))
else:
# All good, record the keyword argument
kwargs[str(param)] = value
if param in unhandled_params:
Variable | Value |
---|---|
args | [] |
bit | 'user=user' |
bits | ['user=user', 'cid=18', 'page=page', 'limit=limit', 'show_flag=1', 'can_search=None', 'user=user'] |
defaults | None |
kwarg | {} |
kwargs | {'can_search': <django.template.base.FilterExpression object at 0x7f2af9baafd0>, 'cid': <django.template.base.FilterExpression object at 0x7f2af9baa820>, 'limit': <django.template.base.FilterExpression object at 0x7f2af9baa580>, 'page': <django.template.base.FilterExpression object at 0x7f2af9baa670>, 'show_flag': <django.template.base.FilterExpression object at 0x7f2af9baa700>, 'user': <django.template.base.FilterExpression object at 0x7f2af9baa400>} |
kwonly | [] |
kwonly_defaults | None |
name | 'search_articles' |
param | 'user' |
params | [] |
parser | <django.template.base.Parser object at 0x7f2af9c47f40> |
takes_context | None |
unhandled_kwargs | [] |
unhandled_params | [] |
value | <django.template.base.FilterExpression object at 0x7f2af9baa040> |
varargs | None |
varkw | 'params' |
AnonymousUser
No GET data
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
CONTENT_LENGTH | '' |
CONTENT_TYPE | '' |
DOCUMENT_ROOT | '/usr/share/nginx/html' |
HTTP_ACCEPT | '*/*' |
HTTP_CONNECTION | 'upgrade' |
HTTP_HOST | 'www.gwyx123.com' |
HTTP_USER_AGENT | 'claudebot' |
HTTP_X_FORWARDED_FOR | '54.157.61.194' |
HTTP_X_REAL_IP | '54.157.61.194' |
PATH_INFO | '/lists/15' |
QUERY_STRING | '' |
REMOTE_ADDR | '172.20.0.7' |
REMOTE_PORT | '59950' |
REQUEST_METHOD | 'GET' |
REQUEST_URI | '/lists/15' |
SCRIPT_NAME | '' |
SERVER_NAME | 'gwyx123.com' |
SERVER_PORT | '8000' |
SERVER_PROTOCOL | 'HTTP/1.1' |
uwsgi.core | 0 |
uwsgi.node | b'gwyx123' |
uwsgi.version | b'2.0.17.1' |
wsgi.errors | <_io.TextIOWrapper name=2 mode='w' encoding='UTF-8'> |
wsgi.file_wrapper | '' |
wsgi.input | <uwsgi._Input object at 0x7f2af9c8c650> |
wsgi.multiprocess | True |
wsgi.multithread | True |
wsgi.run_once | False |
wsgi.url_scheme | 'http' |
wsgi.version | (1, 0) |
website.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [] |
ADMIN_LOGIN_REQUIRED | True |
ALIPAY_NOTIFY_URL | 'https://www.gwyx123.com/alipay/pay_notify/' |
ALI_APPID | '2019113069518857' |
ALI_PUBLIC_KEY | '********************' |
ALI_ROOT_CERT_STRING | ('-----BEGIN CERTIFICATE-----\n' 'MIIBszCCAVegAwIBAgIIaeL+wBcKxnswDAYIKoEcz1UBg3UFADAuMQswCQYDVQQG\n' 'EwJDTjEOMAwGA1UECgwFTlJDQUMxDzANBgNVBAMMBlJPT1RDQTAeFw0xMjA3MTQw\n' 'MzExNTlaFw00MjA3MDcwMzExNTlaMC4xCzAJBgNVBAYTAkNOMQ4wDAYDVQQKDAVO\n' 'UkNBQzEPMA0GA1UEAwwGUk9PVENBMFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAE\n' 'MPCca6pmgcchsTf2UnBeL9rtp4nw+itk1Kzrmbnqo05lUwkwlWK+4OIrtFdAqnRT\n' 'V7Q9v1htkv42TsIutzd126NdMFswHwYDVR0jBBgwFoAUTDKxl9kzG8SmBcHG5Yti\n' 'W/CXdlgwDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFEwysZfZ\n' 'MxvEpgXBxuWLYlvwl3ZYMAwGCCqBHM9VAYN1BQADSAAwRQIgG1bSLeOXp3oB8H7b\n' '53W+CKOPl2PknmWEq/lMhtn25HkCIQDaHDgWxWFtnCrBjH16/W3Ezn7/U/Vjo5xI\n' 'pDoiVhsLwg==\n' '-----END CERTIFICATE-----\n' '\n' '-----BEGIN CERTIFICATE-----\n' 'MIIF0zCCA7ugAwIBAgIIH8+hjWpIDREwDQYJKoZIhvcNAQELBQAwejELMAkGA1UE\n' 'BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmlj\n' 'YXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmlj\n' 'YXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMyMTEzNDg0MFoXDTM4MDIyODEzNDg0\n' 'MFowejELMAkGA1UEBhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNV\n' 'BAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5j\n' 'aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMIICIjANBgkqhkiG9w0BAQEF\n' 'AAOCAg8AMIICCgKCAgEAtytTRcBNuur5h8xuxnlKJetT65cHGemGi8oD+beHFPTk\n' 'rUTlFt9Xn7fAVGo6QSsPb9uGLpUFGEdGmbsQ2q9cV4P89qkH04VzIPwT7AywJdt2\n' 'xAvMs+MgHFJzOYfL1QkdOOVO7NwKxH8IvlQgFabWomWk2Ei9WfUyxFjVO1LVh0Bp\n' 'dRBeWLMkdudx0tl3+21t1apnReFNQ5nfX29xeSxIhesaMHDZFViO/DXDNW2BcTs6\n' 'vSWKyJ4YIIIzStumD8K1xMsoaZBMDxg4itjWFaKRgNuPiIn4kjDY3kC66Sl/6yTl\n' 'YUz8AybbEsICZzssdZh7jcNb1VRfk79lgAprm/Ktl+mgrU1gaMGP1OE25JCbqli1\n' 'Pbw/BpPynyP9+XulE+2mxFwTYhKAwpDIDKuYsFUXuo8t261pCovI1CXFzAQM2w7H\n' 'DtA2nOXSW6q0jGDJ5+WauH+K8ZSvA6x4sFo4u0KNCx0ROTBpLif6GTngqo3sj+98\n' 'SZiMNLFMQoQkjkdN5Q5g9N6CFZPVZ6QpO0JcIc7S1le/g9z5iBKnifrKxy0TQjtG\n' 'PsDwc8ubPnRm/F82RReCoyNyx63indpgFfhN7+KxUIQ9cOwwTvemmor0A+ZQamRe\n' '9LMuiEfEaWUDK+6O0Gl8lO571uI5onYdN1VIgOmwFbe+D8TcuzVjIZ/zvHrAGUcC\n' 'AwEAAaNdMFswCwYDVR0PBAQDAgEGMAwGA1UdEwQFMAMBAf8wHQYDVR0OBBYEFF90\n' 'tATATwda6uWx2yKjh0GynOEBMB8GA1UdIwQYMBaAFF90tATATwda6uWx2yKjh0Gy\n' 'nOEBMA0GCSqGSIb3DQEBCwUAA4ICAQCVYaOtqOLIpsrEikE5lb+UARNSFJg6tpkf\n' 'tJ2U8QF/DejemEHx5IClQu6ajxjtu0Aie4/3UnIXop8nH/Q57l+Wyt9T7N2WPiNq\n' 'JSlYKYbJpPF8LXbuKYG3BTFTdOVFIeRe2NUyYh/xs6bXGr4WKTXb3qBmzR02FSy3\n' 'IODQw5Q6zpXj8prYqFHYsOvGCEc1CwJaSaYwRhTkFedJUxiyhyB5GQwoFfExCVHW\n' '05ZFCAVYFldCJvUzfzrWubN6wX0DD2dwultgmldOn/W/n8at52mpPNvIdbZb2F41\n' 'T0YZeoWnCJrYXjq/32oc1cmifIHqySnyMnavi75DxPCdZsCOpSAT4j4lAQRGsfgI\n' 'kkLPGQieMfNNkMCKh7qjwdXAVtdqhf0RVtFILH3OyEodlk1HYXqX5iE5wlaKzDop\n' 'PKwf2Q3BErq1xChYGGVS+dEvyXc/2nIBlt7uLWKp4XFjqekKbaGaLJdjYP5b2s7N\n' '1dM0MXQ/f8XoXKBkJNzEiM3hfsU6DOREgMc1DIsFKxfuMwX3EkVQM1If8ghb6x5Y\n' 'jXayv+NLbidOSzk4vl5QwngO/JYFMkoc6i9LNwEaEtR9PhnrdubxmrtM+RjfBm02\n' '77q3dSWFESFQ4QxYWew4pHE0DpWbWy/iMIKQ6UZ5RLvB8GEcgt8ON7BBJeMc+Dyi\n' 'kT9qhqn+lw==\n' '-----END CERTIFICATE-----\n' '\n' '-----BEGIN CERTIFICATE-----\n' 'MIICiDCCAgygAwIBAgIIQX76UsB/30owDAYIKoZIzj0EAwMFADB6MQswCQYDVQQG\n' 'EwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UECwwXQ2VydGlmaWNh\n' 'dGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNpYWwgQ2VydGlmaWNh\n' 'dGlvbiBBdXRob3JpdHkgRTEwHhcNMTkwNDI4MTYyMDQ0WhcNNDkwNDIwMTYyMDQ0\n' 'WjB6MQswCQYDVQQGEwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UE\n' 'CwwXQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNp\n' 'YWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRTEwdjAQBgcqhkjOPQIBBgUrgQQA\n' 'IgNiAASCCRa94QI0vR5Up9Yr9HEupz6hSoyjySYqo7v837KnmjveUIUNiuC9pWAU\n' 'WP3jwLX3HkzeiNdeg22a0IZPoSUCpasufiLAnfXh6NInLiWBrjLJXDSGaY7vaokt\n' 'rpZvAdmjXTBbMAsGA1UdDwQEAwIBBjAMBgNVHRMEBTADAQH/MB0GA1UdDgQWBBRZ\n' '4ZTgDpksHL2qcpkFkxD2zVd16TAfBgNVHSMEGDAWgBRZ4ZTgDpksHL2qcpkFkxD2\n' 'zVd16TAMBggqhkjOPQQDAwUAA2gAMGUCMQD4IoqT2hTUn0jt7oXLdMJ8q4vLp6sg\n' 'wHfPiOr9gxreb+e6Oidwd2LDnC4OUqCWiF8CMAzwKs4SnDJYcMLf2vpkbuVE4dTH\n' 'Rglz+HGcTLWsFs4KxLsq7MuU+vJTBUeDJeDjdA==\n' '-----END CERTIFICATE-----\n' '\n' '-----BEGIN CERTIFICATE-----\n' 'MIIDxTCCAq2gAwIBAgIUEMdk6dVgOEIS2cCP0Q43P90Ps5YwDQYJKoZIhvcNAQEF\n' 'BQAwajELMAkGA1UEBhMCQ04xEzARBgNVBAoMCmlUcnVzQ2hpbmExHDAaBgNVBAsM\n' 'E0NoaW5hIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMMH2lUcnVzQ2hpbmEgQ2xhc3Mg\n' 'MiBSb290IENBIC0gRzMwHhcNMTMwNDE4MDkzNjU2WhcNMzMwNDE4MDkzNjU2WjBq\n' 'MQswCQYDVQQGEwJDTjETMBEGA1UECgwKaVRydXNDaGluYTEcMBoGA1UECwwTQ2hp\n' 'bmEgVHJ1c3QgTmV0d29yazEoMCYGA1UEAwwfaVRydXNDaGluYSBDbGFzcyAyIFJv\n' 'b3QgQ0EgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOPPShpV\n' 'nJbMqqCw6Bz1kehnoPst9pkr0V9idOwU2oyS47/HjJXk9Rd5a9xfwkPO88trUpz5\n' '4GmmwspDXjVFu9L0eFaRuH3KMha1Ak01citbF7cQLJlS7XI+tpkTGHEY5pt3EsQg\n' 'wykfZl/A1jrnSkspMS997r2Gim54cwz+mTMgDRhZsKK/lbOeBPpWtcFizjXYCqhw\n' 'WktvQfZBYi6o4sHCshnOswi4yV1p+LuFcQ2ciYdWvULh1eZhLxHbGXyznYHi0dGN\n' 'z+I9H8aXxqAQfHVhbdHNzi77hCxFjOy+hHrGsyzjrd2swVQ2iUWP8BfEQqGLqM1g\n' 'KgWKYfcTGdbPB1MCAwEAAaNjMGEwHQYDVR0OBBYEFG/oAMxTVe7y0+408CTAK8hA\n' 'uTyRMB8GA1UdIwQYMBaAFG/oAMxTVe7y0+408CTAK8hAuTyRMA8GA1UdEwEB/wQF\n' 'MAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQBLnUTfW7hp\n' 'emMbuUGCk7RBswzOT83bDM6824EkUnf+X0iKS95SUNGeeSWK2o/3ALJo5hi7GZr3\n' 'U8eLaWAcYizfO99UXMRBPw5PRR+gXGEronGUugLpxsjuynoLQu8GQAeysSXKbN1I\n' 'UugDo9u8igJORYA+5ms0s5sCUySqbQ2R5z/GoceyI9LdxIVa1RjVX8pYOj8JFwtn\n' 'DJN3ftSFvNMYwRuILKuqUYSHc2GPYiHVflDh5nDymCMOQFcFG3WsEuB+EYQPFgIU\n' '1DHmdZcz7Llx8UOZXX2JupWCYzK1XhJb+r4hK5ncf/w8qGtYlmyJpxk3hr1TfUJX\n' 'Yf4Zr0fJsGuv\n' '-----END CERTIFICATE-----\n') |
ALLOWED_HOSTS | ['*'] |
APPEND_SLASH | True |
APPID | 'wxfa2a029f094deed2' |
APPSECRET | '********************' |
APP_PRIVATE_KEY | '********************' |
APP_PUBLIC_KEY | '********************' |
ASGI_APPLICATION | 'website.routing.application' |
AUTHENTICATION_BACKENDS | ('account.views.TokenBackend',) |
AUTH_LIST | {'h5-weixin-mp': {'app-id': 'wxfa2a029f094deed2', 'app-name': '微信公众号(登陆、菜单)', 'app-type': 'h5-weixin', 'initial-config': {'WEIXIN_APP_ID': 'wxfa2a029f094deed2', 'WEIXIN_APP_SECRET': '********************', 'WEIXIN_EXPIRES_IN': 65535, 'WEIXIN_MCH_CERT_FILE': '/webroot/conf/apiclient_cert.pem', 'WEIXIN_MCH_ID': '1562274461', 'WEIXIN_MCH_KEY': '********************', 'WEIXIN_MCH_KEY_FILE': '********************', 'WEIXIN_NOTIFY_URL': 'https://www.gwyx123.com/weixin/pay_notify/', 'WEIXIN_SENDER': '', 'WEIXIN_TOKEN': '********************'}}, 'web-ali-pay': {'app-id': '2019113069518857', 'app-name': '支付宝网页应用', 'app-type': 'web-alipay', 'initial-config': {'alipay_public_key_cert_string': '********************', 'alipay_root_cert_string': '-----BEGIN ' 'CERTIFICATE-----\n' 'MIIBszCCAVegAwIBAgIIaeL+wBcKxnswDAYIKoEcz1UBg3UFADAuMQswCQYDVQQG\n' 'EwJDTjEOMAwGA1UECgwFTlJDQUMxDzANBgNVBAMMBlJPT1RDQTAeFw0xMjA3MTQw\n' 'MzExNTlaFw00MjA3MDcwMzExNTlaMC4xCzAJBgNVBAYTAkNOMQ4wDAYDVQQKDAVO\n' 'UkNBQzEPMA0GA1UEAwwGUk9PVENBMFkwEwYHKoZIzj0CAQYIKoEcz1UBgi0DQgAE\n' 'MPCca6pmgcchsTf2UnBeL9rtp4nw+itk1Kzrmbnqo05lUwkwlWK+4OIrtFdAqnRT\n' 'V7Q9v1htkv42TsIutzd126NdMFswHwYDVR0jBBgwFoAUTDKxl9kzG8SmBcHG5Yti\n' 'W/CXdlgwDAYDVR0TBAUwAwEB/zALBgNVHQ8EBAMCAQYwHQYDVR0OBBYEFEwysZfZ\n' 'MxvEpgXBxuWLYlvwl3ZYMAwGCCqBHM9VAYN1BQADSAAwRQIgG1bSLeOXp3oB8H7b\n' '53W+CKOPl2PknmWEq/lMhtn25HkCIQDaHDgWxWFtnCrBjH16/W3Ezn7/U/Vjo5xI\n' 'pDoiVhsLwg==\n' '-----END ' 'CERTIFICATE-----\n' '\n' '-----BEGIN ' 'CERTIFICATE-----\n' 'MIIF0zCCA7ugAwIBAgIIH8+hjWpIDREwDQYJKoZIhvcNAQELBQAwejELMAkGA1UE\n' 'BhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNVBAsMF0NlcnRpZmlj\n' 'YXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5jaWFsIENlcnRpZmlj\n' 'YXRpb24gQXV0aG9yaXR5IFIxMB4XDTE4MDMyMTEzNDg0MFoXDTM4MDIyODEzNDg0\n' 'MFowejELMAkGA1UEBhMCQ04xFjAUBgNVBAoMDUFudCBGaW5hbmNpYWwxIDAeBgNV\n' 'BAsMF0NlcnRpZmljYXRpb24gQXV0aG9yaXR5MTEwLwYDVQQDDChBbnQgRmluYW5j\n' 'aWFsIENlcnRpZmljYXRpb24gQXV0aG9yaXR5IFIxMIICIjANBgkqhkiG9w0BAQEF\n' 'AAOCAg8AMIICCgKCAgEAtytTRcBNuur5h8xuxnlKJetT65cHGemGi8oD+beHFPTk\n' 'rUTlFt9Xn7fAVGo6QSsPb9uGLpUFGEdGmbsQ2q9cV4P89qkH04VzIPwT7AywJdt2\n' 'xAvMs+MgHFJzOYfL1QkdOOVO7NwKxH8IvlQgFabWomWk2Ei9WfUyxFjVO1LVh0Bp\n' 'dRBeWLMkdudx0tl3+21t1apnReFNQ5nfX29xeSxIhesaMHDZFViO/DXDNW2BcTs6\n' 'vSWKyJ4YIIIzStumD8K1xMsoaZBMDxg4itjWFaKRgNuPiIn4kjDY3kC66Sl/6yTl\n' 'YUz8AybbEsICZzssdZh7jcNb1VRfk79lgAprm/Ktl+mgrU1gaMGP1OE25JCbqli1\n' 'Pbw/BpPynyP9+XulE+2mxFwTYhKAwpDIDKuYsFUXuo8t261pCovI1CXFzAQM2w7H\n' 'DtA2nOXSW6q0jGDJ5+WauH+K8ZSvA6x4sFo4u0KNCx0ROTBpLif6GTngqo3sj+98\n' 'SZiMNLFMQoQkjkdN5Q5g9N6CFZPVZ6QpO0JcIc7S1le/g9z5iBKnifrKxy0TQjtG\n' 'PsDwc8ubPnRm/F82RReCoyNyx63indpgFfhN7+KxUIQ9cOwwTvemmor0A+ZQamRe\n' '9LMuiEfEaWUDK+6O0Gl8lO571uI5onYdN1VIgOmwFbe+D8TcuzVjIZ/zvHrAGUcC\n' 'AwEAAaNdMFswCwYDVR0PBAQDAgEGMAwGA1UdEwQFMAMBAf8wHQYDVR0OBBYEFF90\n' 'tATATwda6uWx2yKjh0GynOEBMB8GA1UdIwQYMBaAFF90tATATwda6uWx2yKjh0Gy\n' 'nOEBMA0GCSqGSIb3DQEBCwUAA4ICAQCVYaOtqOLIpsrEikE5lb+UARNSFJg6tpkf\n' 'tJ2U8QF/DejemEHx5IClQu6ajxjtu0Aie4/3UnIXop8nH/Q57l+Wyt9T7N2WPiNq\n' 'JSlYKYbJpPF8LXbuKYG3BTFTdOVFIeRe2NUyYh/xs6bXGr4WKTXb3qBmzR02FSy3\n' 'IODQw5Q6zpXj8prYqFHYsOvGCEc1CwJaSaYwRhTkFedJUxiyhyB5GQwoFfExCVHW\n' '05ZFCAVYFldCJvUzfzrWubN6wX0DD2dwultgmldOn/W/n8at52mpPNvIdbZb2F41\n' 'T0YZeoWnCJrYXjq/32oc1cmifIHqySnyMnavi75DxPCdZsCOpSAT4j4lAQRGsfgI\n' 'kkLPGQieMfNNkMCKh7qjwdXAVtdqhf0RVtFILH3OyEodlk1HYXqX5iE5wlaKzDop\n' 'PKwf2Q3BErq1xChYGGVS+dEvyXc/2nIBlt7uLWKp4XFjqekKbaGaLJdjYP5b2s7N\n' '1dM0MXQ/f8XoXKBkJNzEiM3hfsU6DOREgMc1DIsFKxfuMwX3EkVQM1If8ghb6x5Y\n' 'jXayv+NLbidOSzk4vl5QwngO/JYFMkoc6i9LNwEaEtR9PhnrdubxmrtM+RjfBm02\n' '77q3dSWFESFQ4QxYWew4pHE0DpWbWy/iMIKQ6UZ5RLvB8GEcgt8ON7BBJeMc+Dyi\n' 'kT9qhqn+lw==\n' '-----END ' 'CERTIFICATE-----\n' '\n' '-----BEGIN ' 'CERTIFICATE-----\n' 'MIICiDCCAgygAwIBAgIIQX76UsB/30owDAYIKoZIzj0EAwMFADB6MQswCQYDVQQG\n' 'EwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UECwwXQ2VydGlmaWNh\n' 'dGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNpYWwgQ2VydGlmaWNh\n' 'dGlvbiBBdXRob3JpdHkgRTEwHhcNMTkwNDI4MTYyMDQ0WhcNNDkwNDIwMTYyMDQ0\n' 'WjB6MQswCQYDVQQGEwJDTjEWMBQGA1UECgwNQW50IEZpbmFuY2lhbDEgMB4GA1UE\n' 'CwwXQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkxMTAvBgNVBAMMKEFudCBGaW5hbmNp\n' 'YWwgQ2VydGlmaWNhdGlvbiBBdXRob3JpdHkgRTEwdjAQBgcqhkjOPQIBBgUrgQQA\n' 'IgNiAASCCRa94QI0vR5Up9Yr9HEupz6hSoyjySYqo7v837KnmjveUIUNiuC9pWAU\n' 'WP3jwLX3HkzeiNdeg22a0IZPoSUCpasufiLAnfXh6NInLiWBrjLJXDSGaY7vaokt\n' 'rpZvAdmjXTBbMAsGA1UdDwQEAwIBBjAMBgNVHRMEBTADAQH/MB0GA1UdDgQWBBRZ\n' '4ZTgDpksHL2qcpkFkxD2zVd16TAfBgNVHSMEGDAWgBRZ4ZTgDpksHL2qcpkFkxD2\n' 'zVd16TAMBggqhkjOPQQDAwUAA2gAMGUCMQD4IoqT2hTUn0jt7oXLdMJ8q4vLp6sg\n' 'wHfPiOr9gxreb+e6Oidwd2LDnC4OUqCWiF8CMAzwKs4SnDJYcMLf2vpkbuVE4dTH\n' 'Rglz+HGcTLWsFs4KxLsq7MuU+vJTBUeDJeDjdA==\n' '-----END ' 'CERTIFICATE-----\n' '\n' '-----BEGIN ' 'CERTIFICATE-----\n' 'MIIDxTCCAq2gAwIBAgIUEMdk6dVgOEIS2cCP0Q43P90Ps5YwDQYJKoZIhvcNAQEF\n' 'BQAwajELMAkGA1UEBhMCQ04xEzARBgNVBAoMCmlUcnVzQ2hpbmExHDAaBgNVBAsM\n' 'E0NoaW5hIFRydXN0IE5ldHdvcmsxKDAmBgNVBAMMH2lUcnVzQ2hpbmEgQ2xhc3Mg\n' 'MiBSb290IENBIC0gRzMwHhcNMTMwNDE4MDkzNjU2WhcNMzMwNDE4MDkzNjU2WjBq\n' 'MQswCQYDVQQGEwJDTjETMBEGA1UECgwKaVRydXNDaGluYTEcMBoGA1UECwwTQ2hp\n' 'bmEgVHJ1c3QgTmV0d29yazEoMCYGA1UEAwwfaVRydXNDaGluYSBDbGFzcyAyIFJv\n' 'b3QgQ0EgLSBHMzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAOPPShpV\n' 'nJbMqqCw6Bz1kehnoPst9pkr0V9idOwU2oyS47/HjJXk9Rd5a9xfwkPO88trUpz5\n' '4GmmwspDXjVFu9L0eFaRuH3KMha1Ak01citbF7cQLJlS7XI+tpkTGHEY5pt3EsQg\n' 'wykfZl/A1jrnSkspMS997r2Gim54cwz+mTMgDRhZsKK/lbOeBPpWtcFizjXYCqhw\n' 'WktvQfZBYi6o4sHCshnOswi4yV1p+LuFcQ2ciYdWvULh1eZhLxHbGXyznYHi0dGN\n' 'z+I9H8aXxqAQfHVhbdHNzi77hCxFjOy+hHrGsyzjrd2swVQ2iUWP8BfEQqGLqM1g\n' 'KgWKYfcTGdbPB1MCAwEAAaNjMGEwHQYDVR0OBBYEFG/oAMxTVe7y0+408CTAK8hA\n' 'uTyRMB8GA1UdIwQYMBaAFG/oAMxTVe7y0+408CTAK8hAuTyRMA8GA1UdEwEB/wQF\n' 'MAMBAf8wDgYDVR0PAQH/BAQDAgEGMA0GCSqGSIb3DQEBBQUAA4IBAQBLnUTfW7hp\n' 'emMbuUGCk7RBswzOT83bDM6824EkUnf+X0iKS95SUNGeeSWK2o/3ALJo5hi7GZr3\n' 'U8eLaWAcYizfO99UXMRBPw5PRR+gXGEronGUugLpxsjuynoLQu8GQAeysSXKbN1I\n' 'UugDo9u8igJORYA+5ms0s5sCUySqbQ2R5z/GoceyI9LdxIVa1RjVX8pYOj8JFwtn\n' 'DJN3ftSFvNMYwRuILKuqUYSHc2GPYiHVflDh5nDymCMOQFcFG3WsEuB+EYQPFgIU\n' '1DHmdZcz7Llx8UOZXX2JupWCYzK1XhJb+r4hK5ncf/w8qGtYlmyJpxk3hr1TfUJX\n' 'Yf4Zr0fJsGuv\n' '-----END ' 'CERTIFICATE-----\n', 'app_notify_url': 'https://www.gwyx123.com/alipay/pay_notify/', 'app_private_key_string': '********************', 'app_public_key_cert_string': '********************', 'appid': '2019113069518857'}}, 'web-qq-login': {'app-id': '101821252', 'app-name': 'QQ跳转登录', 'app-type': 'web-qq', 'initial-config': {'QQ_APPID': '101821252', 'QQ_APPKEY': '********************', 'QQ_CALLBACK': 'https://www.gwyx123.com/qq/callback', 'QQ_STATE': 'Z9UH'}}, 'web-weixin-login': {'app-id': 'wx64190705d9e423a9', 'app-name': '微信扫码登录', 'app-type': 'web-weixin', 'initial-config': {'WEIXIN_APP_ID': 'wx64190705d9e423a9', 'WEIXIN_APP_SECRET': '********************'}}} |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'account.UserAccount' |
BASE_DIR | '/webroot/website' |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache', 'LOCATION': '/var/tmp/django_cache'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
CELERY_ACCEPT_CONTENT | ['application/json'] |
CELERY_BEAT_SCHEDULER | 'django_celery_beat.schedulers:DatabaseScheduler' |
CELERY_BROKER_URL | 'redis://redis:6379/3' |
CELERY_ENABLE_UTC | False |
CELERY_IMPORTS | 'common.tasks' |
CELERY_RESULT_BACKEND | 'redis://redis:6379/3' |
CELERY_RESULT_SERIALIZER | 'json' |
CELERY_TASK_SERIALIZER | 'json' |
CHANNEL_LAYERS | {'default': {'BACKEND': 'channels_redis.core.RedisChannelLayer', 'CONFIG': {'hosts': [('redis', 6379)]}}} |
CMS_CONVERT_KEYWORDS | '********************' |
CMS_FILTER_KEYWORDS | '********************' |
CORS_ALLOW_CREDENTIALS | False |
CORS_ALLOW_HEADERS | ('XMLHttpRequest', 'X_FILENAME', 'accept-encoding', 'authorization', 'content-type', 'dnt', 'origin', 'user-agent', 'x-csrftoken', 'x-requested-with', 'Pragma', 'token') |
CORS_ALLOW_METHODS | ('DELETE', 'GET', 'OPTIONS', 'PATCH', 'POST', 'PUT', 'VIEW') |
CORS_ORIGIN_ALLOW_ALL | False |
CORS_ORIGIN_WHITELIST | ['http://localhost:8081', 'http://localhost:8080'] |
CREDENTIALS | False |
CSRF_COOKIE_AGE | 31449600 |
CSRF_COOKIE_DOMAIN | None |
CSRF_COOKIE_HTTPONLY | 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_MAX_AGE': 0, 'ENGINE': 'django.db.backends.mysql', 'HOST': '', 'NAME': '', 'OPTIONS': {'init_command': "SET sql_mode='STRICT_TRANS_TABLES'", 'read_default_file': '../conf/website_db.conf'}, 'PASSWORD': '********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIRROR': None, 'NAME': None}, 'TIME_ZONE': None, 'USER': ''}} |
DATABASE_ROUTERS | [] |
DATA_UPLOAD_MAX_MEMORY_SIZE | 2621440 |
DATA_UPLOAD_MAX_NUMBER_FIELDS | 1000 |
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', '%Y-%m-%d', '%m/%d/%Y %H:%M:%S', '%m/%d/%Y %H:%M:%S.%f', '%m/%d/%Y %H:%M', '%m/%d/%Y', '%m/%d/%y %H:%M:%S', '%m/%d/%y %H:%M:%S.%f', '%m/%d/%y %H:%M', '%m/%d/%y'] |
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_CHARSET | 'utf-8' |
DEFAULT_CONTENT_TYPE | 'text/html' |
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 | '' |
DISALLOWED_USER_AGENTS | [] |
DJANGO_CELERY_BEAT_TZ_AWARE | False |
ELASTICSEARCH_DSL | {'default': {'hosts': '172.20.0.6:9200'}} |
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 |
ENVIRONMENT | 'publish' |
FILE_CHARSET | 'utf-8' |
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 | None |
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' |
IGNORABLE_404_URLS | [] |
INSTALLED_APPS | ['channels', 'backadmin.apps.BackadminConfig', 'cms.apps.CmsConfig', 'home.apps.HomeConfig', 'account.apps.AccountConfig', 'openwx.apps.OpenwxConfig', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'corsheaders', 'chat', 'django_user_agents', 'django_celery_beat', 'stock.apps.StockConfig', 'django_elasticsearch_dsl'] |
INTERNAL_IPS | [] |
LANGUAGES | [('af', 'Afrikaans'), ('ar', 'Arabic'), ('ast', 'Asturian'), ('az', 'Azerbaijani'), ('bg', 'Bulgarian'), ('be', 'Belarusian'), ('bn', 'Bengali'), ('br', 'Breton'), ('bs', 'Bosnian'), ('ca', 'Catalan'), ('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'), ('io', 'Ido'), ('is', 'Icelandic'), ('it', 'Italian'), ('ja', 'Japanese'), ('ka', 'Georgian'), ('kab', 'Kabyle'), ('kk', 'Kazakh'), ('km', 'Khmer'), ('kn', 'Kannada'), ('ko', 'Korean'), ('lb', 'Luxembourgish'), ('lt', 'Lithuanian'), ('lv', 'Latvian'), ('mk', 'Macedonian'), ('ml', 'Malayalam'), ('mn', 'Mongolian'), ('mr', 'Marathi'), ('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'), ('th', 'Thai'), ('tr', 'Turkish'), ('tt', 'Tatar'), ('udm', 'Udmurt'), ('uk', 'Ukrainian'), ('ur', 'Urdu'), ('vi', 'Vietnamese'), ('zh-hans', 'Simplified Chinese'), ('zh-hant', 'Traditional Chinese')] |
LANGUAGES_BIDI | ['he', 'ar', 'fa', 'ur'] |
LANGUAGE_CODE | 'zh-Hans' |
LANGUAGE_COOKIE_AGE | None |
LANGUAGE_COOKIE_DOMAIN | None |
LANGUAGE_COOKIE_NAME | 'django_language' |
LANGUAGE_COOKIE_PATH | '/' |
LOCALE_PATHS | [] |
LOGGING | {'disable_existing_loggers': False, 'handlers': {'sync_log_file': {'class': 'logging.FileHandler', 'filename': '/webroot/log/sync_log.log', 'level': 'DEBUG'}}, 'loggers': {'sync_logger': {'handlers': ['sync_log_file'], 'level': 'DEBUG', 'propagate': True}}, 'version': 1} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/accounts/profile/' |
LOGIN_URL | '/cms/account/login' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | [] |
MAX_RESULT_WINDOW | 50000 |
MEDIA_ROOT | '' |
MEDIA_URL | '' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'corsheaders.middleware.CorsMiddleware', 'django.middleware.common.CommonMiddleware', 'common.middleware.ThreadLocalUserMiddleware', 'common.error_middleware.ErrorMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'account.views.CheckTokenMiddware', 'django_user_agents.middleware.UserAgentMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PAY_TYPES | ['weixin-jsapi', 'weixin-web', 'alipay-web'] |
PHONE_DAILY_SMS_QUOTA | 2 |
PREPEND_WWW | False |
QINGRUAN_SYNC_PRIVATE | '/webroot/conf/sync_private.pem' |
QINGRUAN_SYNC_PUBLIC | '/webroot/conf/sync_public.pem' |
QINIU_DOMAIN | 'https://cdn.qingruan.tech/' |
QINIU_PRIVATE_DOMAIN | 'https://cdns.qingruan.tech/' |
QN_ACCESS_KEY | '********************' |
QN_BUCKET_NAME | 'qingruan-disk' |
QN_PRIVATE_BUCKET_NAME | 'qingruan-s-disk' |
QN_SECRET_KEY | '********************' |
QQ_APPID | '101821252' |
QQ_APPKEY | '********************' |
QQ_CALLBACK | 'https://www.gwyx123.com/qq/callback' |
QQ_STATE | 'Z9UH' |
ROOT_URLCONF | 'website.urls' |
SECRET_KEY | '********************' |
SECURE_BROWSER_XSS_FILTER | False |
SECURE_CONTENT_TYPE_NOSNIFF | False |
SECURE_HSTS_INCLUDE_SUBDOMAINS | False |
SECURE_HSTS_PRELOAD | False |
SECURE_HSTS_SECONDS | 0 |
SECURE_PROXY_SSL_HEADER | None |
SECURE_REDIRECT_EXEMPT | [] |
SECURE_SSL_HOST | None |
SECURE_SSL_REDIRECT | False |
SERVER_EMAIL | 'root@localhost' |
SESSION_CACHE_ALIAS | 'default' |
SESSION_COOKIE_AGE | 86400 |
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 | True |
SESSION_FILE_PATH | None |
SESSION_SAVE_EVERY_REQUEST | True |
SESSION_SERIALIZER | 'django.contrib.sessions.serializers.JSONSerializer' |
SETTINGS_MODULE | 'website.settings' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SITE_TITLE | '公文优选' |
SITE_URL | 'https://www.gwyx123.com' |
SMS_OPTIONS | {'account': 'gwyx', 'password': '********************', 'type': 'smsbao'} |
STATICFILES_DIRS | [] |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/webroot/website/static' |
STATIC_URL | '/static/' |
STORE_BASE_URL | 'https://zhibiyanjiusuo-1253904363.picbj.myqcloud.com' |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['/webroot/website/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'], 'debug': True}}] |
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' |
TX_COS_CONFIG | {'bucket': 'gwyx-1304223287', 'region': 'ap-shanghai', 'secret_id': '********************', 'secret_key': '********************', 'token': '********************'} |
UPLOAD_FILE_PATH | '/webroot/uploads/fj' |
UPLOAD_FILE_TYPE | 'TENGXUN' |
UPLOAD_FILE_URL_ROOT | '/uploads/fj' |
UPLOAD_PATH | '/webroot/uploads/image' |
UPLOAD_PHOTO_TYPE | 'LOCAL' |
UPLOAD_URL_ROOT | '/ueditor/php/upload/image' |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | False |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WEB_APPID | 'wx64190705d9e423a9' |
WEB_APPSECRET | '********************' |
WECHAT_BROWSER_LOGIN_URL | '/cms/account/login' |
WEIXIN_EXPIRES_IN | 65535 |
WEIXIN_SENDER | '' |
WEIXIN_TOKEN | '********************' |
WSGI_APPLICATION | 'website.wsgi.application' |
WXAPPID | '' |
WXAPPSECRET | '********************' |
WXPAY_CERT | '/webroot/conf/apiclient_cert.pem' |
WXPAY_KEY | '********************' |
WXPAY_MCHID | '1562274461' |
WXPAY_MCHKEY | '********************' |
WXPAY_NOTIFYURL | 'https://www.gwyx123.com/weixin/pay_notify/' |
X_FRAME_OPTIONS | 'SAMEORIGIN' |
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.