'v'
Request Method: | GET |
---|---|
Request URL: | https://wesharescience.com/?category=Biology&page=10 |
Django Version: | 3.2.8 |
Exception Type: | KeyError |
Exception Value: | 'v' |
Exception Location: | /var/www/html/wesharescience.com/public_html/wesharescience/./cards/templatetags/get_title.py, line 39, in video_title |
Python Executable: | /usr/local/bin/uwsgi |
Python Version: | 3.8.10 |
Python Path: | ['.', '', '/usr/lib/python38.zip', '/usr/lib/python3.8', '/usr/lib/python3.8/lib-dynload', '/usr/local/lib/python3.8/dist-packages', '/usr/lib/python3/dist-packages'] |
Server time: | Thu, 28 Mar 2024 22:57:57 +0000 |
In template /var/www/html/wesharescience.com/public_html/wesharescience/cards/templates/each_card.html
, error at line 67
57 | <a href="{{ card.id }}"><img src="https://img.youtube.com/vi/ScMzIvxBSi4/0.jpg" width="100%"></a> |
---|---|
58 | |
59 | {% endif %} |
60 | |
61 | |
62 | |
63 | |
64 | |
65 | |
66 | </div> |
67 | <p> <b> {{ card.video_url|video_title }}</b></p> |
68 | <p class="card-text">{{ card.description|slice:":200" }}...</p> |
69 | |
70 | |
71 | |
72 | |
73 | |
74 | |
75 | <a href="https://wesharescience.com/{{ card.id }}" class="btn btn-primary" style="width:80%; height: 40px;">Watch</a> |
76 | |
77 |
/usr/local/lib/python3.8/dist-packages/django/core/handlers/exception.py
, line 47, in inner
response = await sync_to_async(response_for_exception, thread_sensitive=False)(request, exc)
return response
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 | KeyError('v') |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7fa7509dfa30>> |
request | <WSGIRequest: GET '/?category=Biology&page=10'> |
/usr/local/lib/python3.8/dist-packages/django/core/handlers/base.py
, line 181, 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 asyncio.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 index at 0x7fa75073eaf0> |
callback_args | () |
callback_kwargs | {} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7fa750978310>> |
request | <WSGIRequest: GET '/?category=Biology&page=10'> |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7fa7509dfa30> |
wrapped_callback | <function index at 0x7fa75073eaf0> |
/var/www/html/wesharescience.com/public_html/wesharescience/./cards/views.py
, line 593, in index
"has_next": has_next,
"wishlist": [] if not wishlist else json.loads(wishlist.favorite_cards),
}
return render(request, "index.html", context)…
def command(request, id, cmd):
return redirect("/")
Variable | Value |
---|---|
Paginator | <class 'django.core.paginator.Paginator'> |
author_name | None |
card_form | <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)> |
cards | <Page 10 of 60> |
categories | <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']> |
category | 'Biology' |
category_select | 'Biology' |
choice | <bound method Random.choice of <random.Random object at 0x5594ec696e90>> |
context | {'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'has_next': True, 'has_previous': True, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'page': <Page 1 of 1>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'q': None, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'wishlist': []} |
current_page | <Page 1 of 1> |
has_next | True |
has_previous | True |
is_ajax_request | False |
limit | 20 |
login_form | <LoginForm bound=True, valid=False, fields=(username;password)> |
page | '10' |
page_number | '10' |
pagination | <django.core.paginator.Paginator object at 0x7fa74f5c11c0> |
request | <WSGIRequest: GET '/?category=Biology&page=10'> |
search_term | None |
signup_form | <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)> |
url_param | None |
wishlist | None |
/usr/local/lib/python3.8/dist-packages/django/shortcuts.py
, line 19, 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 | {'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'has_next': True, 'has_previous': True, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'page': <Page 1 of 1>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'q': None, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'wishlist': []} |
request | <WSGIRequest: GET '/?category=Biology&page=10'> |
status | None |
template_name | 'index.html' |
using | None |
/usr/local/lib/python3.8/dist-packages/django/template/loader.py
, line 62, in render_to_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 | {'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'has_next': True, 'has_previous': True, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'page': <Page 1 of 1>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'q': None, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'wishlist': []} |
request | <WSGIRequest: GET '/?category=Biology&page=10'> |
template | <django.template.backends.django.Template object at 0x7fa74f70f400> |
template_name | 'index.html' |
using | None |
/usr/local/lib/python3.8/dist-packages/django/template/backends/django.py
, line 61, in render
@property
def origin(self):
return self.template.origin
def render(self, context=None, request=None):
context = make_context(context, request, autoescape=self.backend.engine.autoescape)
try:
return self.template.render(context)…
except TemplateDoesNotExist as exc:
reraise(exc, self.backend)
def copy_exception(exc, backend=None):
"""
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
request | <WSGIRequest: GET '/?category=Biology&page=10'> |
self | <django.template.backends.django.Template object at 0x7fa74f70f400> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 170, in render
def render(self, context):
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
context.template_name = self.name
return self._render(context)…
else:
return self._render(context)
def compile_nodelist(self):
"""
Parse and compile the template source into a nodelist. If debug
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.base.Template object at 0x7fa74f7839d0> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 162, in _render
self.nodelist = self.compile_nodelist()
def __iter__(self):
for node in self.nodelist:
yield from node
def _render(self, context):
return self.nodelist.render(context)…
def render(self, context):
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.base.Template object at 0x7fa74f7839d0> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 938, in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = node.render_annotated(context)…
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n\n\n\n' |
bits | ['\n' '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" ' '"http://www.w3.org/TR/html4/strict.dtd">\n' '<html>\n' '<head>\n' '\n' ' ', '\n' '\n' '\n' '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" ' '"http://www.w3.org/TR/html4/strict.dtd">\n' '<html>\n' '<head>\n' ' <!-- <link rel="stylesheet" href="css/responsive.css"> -->\n' ' <link rel="stylesheet" ' 'href="https://fonts.googleapis.com/icon?family=Material+Icons">\n' ' <link rel="stylesheet" ' 'href="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css">\n' '\n' ' \n' ' <script ' 'src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>\n' ' <!-- <script type="text/javascript" ' 'src="/static/home/js/main.js"></script> -->\n' ' \n' ' <!-- Popper JS -->\n' ' <script ' 'src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script>\n' ' \n' ' <!-- Latest compiled JavaScript -->\n' ' <script ' 'src="https://maxcdn.bootstrapcdn.com/bootstrap/4.4.1/js/bootstrap.min.js"></script>\n' ' \n' ' <!-- icon library -->\n' ' <link rel="stylesheet" ' 'href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> \n' '\n' ' <link href="/static/fontawesomefree/css/fontawesome.css" ' 'rel="stylesheet" type="text/css">\n' ' <link href="/static/fontawesomefree/css/brands.css" rel="stylesheet" ' 'type="text/css">\n' ' <link href="/static/fontawesomefree/css/solid.css" rel="stylesheet" ' 'type="text/css">\n' ' \n' ' <!-- Boostrap Modal-Forms app-->\n' ' <script src="/static/js/jquery.bootstrap.modal.forms.min.js"></script>\n' '\n' ' <link rel="shortcut icon" type="image/png" ' 'href="/static/home/favicon.ico"/>\n' '\n' ' <meta http-equiv="Content-Type" content="text/html; charset=utf-8">\n' ' <meta http-equiv="Content-Style-Type" content="text/css">\n' ' <title>WeShareScience</title>\n' ' <meta name="Generator" content="Cocoa HTML Writer">\n' ' <meta name="CocoaVersion" content="2299">\n' '\n' '\n' ' <style type="text/css">\n' ' @import ' 'url("https://fonts.googleapis.com/css2?family=Nunito+Sans:wght@300;400;600&display=swap");\n' ' @import ' 'url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.1.1/css/all.min.css");\n' ' p.p1 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Times; color: ' '#000000; -webkit-text-stroke: #000000}\n' ' p.p2 {margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Times; color: ' '#000000; -webkit-text-stroke: #000000; min-height: 14.0px}\n' ' p.p3 {margin: 0.0px 0.0px 0.0px 0.0px; font: 14.4px Monaco; color: ' '#262626; -webkit-text-stroke: #262626; background-color: #f2f2f2; ' 'min-height: 19.0px}\n' ' span.s1 {font-kerning: none}\n' ' </style><b></b>\n' '\n' '\n' '\n' ' </head>\n' '</html>\n' '\n' '\n' '\n', '\n\n</head>\n\n<body>\n\n\n ', '<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN" ' '"http://www.w3.org/TR/html4/strict.dtd">\n' '<html>\n' ' \n' ' \n' '<head>\n' ' <!-- Load Bootstrap -->\n' ' <link rel="stylesheet" href=\n' ' ' '"https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/css/bootstrap.min.css"\n' ' integrity=\n' ' "sha384-r4NyP46KrjDleawBgD5tp8Y7UzmLA05oM1iAEQ17CSuDqnUK2+k9luXQOfXJCJ4I"\n' ' crossorigin="anonymous">\n' ' <script src=\n' ' "https://cdn.jsdelivr.net/npm/[email protected]/dist/umd/popper.min.js"\n' ' integrity=\n' ' "sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo"\n' ' crossorigin="anonymous">\n' ' </script>\n' ' <script src=\n' ' ' '"https://stackpath.bootstrapcdn.com/bootstrap/5.0.0-alpha1/js/bootstrap.min.js"\n' ' integrity=\n' ' "sha384-oesi62hOLfzrys4LxRF63OJCXdXDipiYWBnvTl9Y9/TRlw5xlKIEHpNyvvDShgf/"\n' ' crossorigin="anonymous">\n' ' </script>\n' '\n' '\n' '<link rel="stylesheet" ' 'href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,400,0,0" ' '/>\… <trimmed 29549 bytes string> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
node | <django.template.loader_tags.IncludeNode object at 0x7fa74f67fdc0> |
self | [<TextNode: '\n<!DOCTYPE html PUBLIC "-'>, <django.template.loader_tags.IncludeNode object at 0x7fa74f67ff70>, <TextNode: '\n\n</head>\n\n<body>\n\n\n '>, <django.template.loader_tags.IncludeNode object at 0x7fa74f67f5e0>, <TextNode: '\n\n\n \n '>, <django.template.loader_tags.IncludeNode object at 0x7fa74f67f6d0>, <TextNode: '\n\n\n\n'>, <django.template.loader_tags.IncludeNode object at 0x7fa74f67fdc0>, <TextNode: '\n\n'>, <django.template.loader_tags.IncludeNode object at 0x7fa74f67fdf0>, <TextNode: '\n\n\n\n\n\n\n\n</body>\n</html>\n\n'>] |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.loader_tags.IncludeNode object at 0x7fa74f67fdc0> |
/usr/local/lib/python3.8/dist-packages/django/template/loader_tags.py
, line 195, in render
values = {
name: var.resolve(context)
for name, var in self.extra_context.items()
}
if self.isolated_context:
return template.render(context.new(values))
with context.push(**values):
return template.render(context)…
@register.tag('block')
def do_block(parser, token):
"""
Define a block that can be overridden by child templates.
Variable | Value |
---|---|
cache | {('cards.html',): <django.template.base.Template object at 0x7fa74f574af0>} |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.loader_tags.IncludeNode object at 0x7fa74f67fdc0> |
template | <django.template.base.Template object at 0x7fa74f574af0> |
template_name | ('cards.html',) |
values | {} |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 172, in render
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
context.template_name = self.name
return self._render(context)
else:
return self._render(context)…
def compile_nodelist(self):
"""
Parse and compile the template source into a nodelist. If debug
is True and an exception occurs during parsing, the exception is
annotated with contextual line information where it occurred in the
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.base.Template object at 0x7fa74f574af0> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 162, in _render
self.nodelist = self.compile_nodelist()
def __iter__(self):
for node in self.nodelist:
yield from node
def _render(self, context):
return self.nodelist.render(context)…
def render(self, context):
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.base.Template object at 0x7fa74f574af0> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 938, in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = node.render_annotated(context)…
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | ('"></script>\n' '\n' '\n' '\n' '\n' '\n' '\n' '\n' ' <div class="card mx-auto" style="width: 98%; border:0px;">\n' ' \n' '<div style="display: flex; flex-direction: row; flex-wrap: wrap; ">\n' ' \n' '\n' '\n' '<div class="row" id="replaceable-content">\n' '\n' '\n' ' ') |
bits | ['', '\n', '', '\n' '\n' '<!DOCTYPE html>\n' '<html lang="en">\n' '<head>\n' '\n' '\n' '\n' '\n' ' <script ' 'src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>\n' ' <script ' 'src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>\n' '\n' '\n' ' <link rel="stylesheet" ' 'href="https://stackpath.bootstrapcdn.com/bootstrap/4.4.1/css/bootstrap.min.css" ' 'integrity="sha384-Vkoo8x4CGsO3+Hhxv8T/Q5PaXtkKtu6ug5TOeNV6gBiFeWPGFN9MuhOf23Q9Ifjh" ' 'crossorigin="anonymous">\n' '\n' '\n' '\n' ' <link rel="stylesheet" ' 'href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@48,400,0,0" ' '/>\n' '\n' '\n' '\n' ' <meta charset="UTF-8">\n' ' <link ' 'href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css"\n' ' rel="stylesheet"\n' ' ' 'integrity="sha384-wEmeIV1mKuiNpC+IOBjI7aAzPcEZeedi5yW5f2yOq55WWLwNGmvvx4Um1vskeMj0"\n' ' crossorigin="anonymous">\n' '\n' ' \n' ' \n' ' <script>\n' ' \n' ' // let toggle_favorite_url = "', '/toggle_favorite', '";\n' ' function toggle_icon(card_id) {\n' ' if (!card_id) {\n' ' return;\n' ' }\n' ' \n' ' $.ajax({\n' ' url: "', '/toggle_favorite', '", // was toggle_favorite_url\n' ' type: "GET",\n' ' data: `card_id=${card_id}`,\n' ' success: (response) => {\n' ' console.log(response);\n' ' if (response.status) {\n' ' if (response.is_favorite) {\n' ' $(`#fav-icon-${card_id}`).addClass("text-danger");\n' ' $(`#fav-icon-${card_id}`).text("update");\n' ' } else {\n' ' $(`#fav-icon-${card_id}`).removeClass("text-danger");\n' ' $(`#fav-icon-${card_id}`).text("update");\n' ' }\n' ' $(`#fav-icon-${card_id}`).show();\n' ' }\n' ' },\n' ' });\n' ' }\n' ' </script>\n' '\n' '\n' '\n' '</head>\n' '<body>\n' ' ', '', '\n ', '', '\n' ' <!-- this is for bootstrap modal forms-->\n' ' \n' ' <!-- You can alternatively load the minified version -->\n' ' <script src="', '/static/js/jquery.bootstrap.modal.forms.min.js', '"></script>\n' '\n' '\n' '\n' '\n' '\n' '\n' '\n' ' <div class="card mx-auto" style="width: 98%; border:0px;">\n' ' \n' '<div style="display: flex; flex-direction: row; flex-wrap: wrap; ">\n' ' \n' '\n' '\n' '<div class="row" id="replaceable-content">\n' '\n' '\n' ' '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
node | <django.template.loader_tags.IncludeNode object at 0x7fa74f659880> |
self | [<django.template.defaulttags.LoadNode object at 0x7fa74f574940>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f659a30>, <TextNode: '\n\n<!DOCTYPE html>\n<html l'>, <django.template.defaulttags.URLNode object at 0x7fa74f659220>, <TextNode: '";\n function tog'>, <django.template.defaulttags.URLNode object at 0x7fa74f659760>, <TextNode: '", // was toggle_favorit'>, <django.template.defaulttags.LoadNode object at 0x7fa74f659a90>, <TextNode: '\n '>, <django.template.defaulttags.LoadNode object at 0x7fa74f659af0>, <TextNode: '\n <!-- this is for boots'>, <django.templatetags.static.StaticNode object at 0x7fa74f6590d0>, <TextNode: '"></script>\n\n\n\n\n\n\n\n '>, <django.template.loader_tags.IncludeNode object at 0x7fa74f659880>, <TextNode: '\n\n\n</div> <!--end of '>] |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.loader_tags.IncludeNode object at 0x7fa74f659880> |
/usr/local/lib/python3.8/dist-packages/django/template/loader_tags.py
, line 195, in render
values = {
name: var.resolve(context)
for name, var in self.extra_context.items()
}
if self.isolated_context:
return template.render(context.new(values))
with context.push(**values):
return template.render(context)…
@register.tag('block')
def do_block(parser, token):
"""
Define a block that can be overridden by child templates.
Variable | Value |
---|---|
cache | {('cards_insert.html',): <django.template.base.Template object at 0x7fa74f659190>} |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.loader_tags.IncludeNode object at 0x7fa74f659880> |
template | <django.template.base.Template object at 0x7fa74f659190> |
template_name | ('cards_insert.html',) |
values | {} |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 172, in render
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
context.template_name = self.name
return self._render(context)
else:
return self._render(context)…
def compile_nodelist(self):
"""
Parse and compile the template source into a nodelist. If debug
is True and an exception occurs during parsing, the exception is
annotated with contextual line information where it occurred in the
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.base.Template object at 0x7fa74f659190> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 162, in _render
self.nodelist = self.compile_nodelist()
def __iter__(self):
for node in self.nodelist:
yield from node
def _render(self, context):
return self.nodelist.render(context)…
def render(self, context):
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.base.Template object at 0x7fa74f659190> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 938, in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = node.render_annotated(context)…
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bits | [] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
node | <Block Node: content. Contents: [<TextNode: '\n'>, <IfNode>, <TextNode: ' \n\n\n\n\n\n\n'>]> |
self | [<Block Node: content. Contents: [<TextNode: '\n'>, <IfNode>, <TextNode: ' \n\n\n\n\n\n\n'>]>] |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <Block Node: content. Contents: [<TextNode: '\n'>, <IfNode>, <TextNode: ' \n\n\n\n\n\n\n'>]> |
/usr/local/lib/python3.8/dist-packages/django/template/loader_tags.py
, line 53, in render
return "<Block Node: %s. Contents: %r>" % (self.name, self.nodelist)
def render(self, context):
block_context = context.render_context.get(BLOCK_CONTEXT_KEY)
with context.push():
if block_context is None:
context['block'] = self
result = self.nodelist.render(context)…
else:
push = block = block_context.pop(self.name)
if block is None:
block = self
# Create new block so we can store context without thread-safety issues.
block = type(self)(block.name, block.nodelist)
Variable | Value |
---|---|
block_context | None |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <Block Node: content. Contents: [<TextNode: '\n'>, <IfNode>, <TextNode: ' \n\n\n\n\n\n\n'>]> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 938, in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = node.render_annotated(context)…
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n' |
bits | ['\n'] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
node | <IfNode> |
self | [<TextNode: '\n'>, <IfNode>, <TextNode: ' \n\n\n\n\n\n\n'>] |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <IfNode> |
/usr/local/lib/python3.8/dist-packages/django/template/defaulttags.py
, line 312, in render
match = condition.eval(context)
except VariableDoesNotExist:
match = None
else: # else clause
match = True
if match:
return nodelist.render(context)…
return ''
class LoremNode(Node):
def __init__(self, count, method, common):
Variable | Value |
---|---|
condition | (literal <django.template.base.FilterExpression object at 0x7fa74ea49e50>) |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
match | <Page 10 of 60> |
nodelist | [<TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74ea49070>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74ea49d30>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74ea49520>, <TextNode: '\n\n\n\n<script src="https://'>, <django.template.defaulttags.URLNode object at 0x7fa74ea495b0>, <TextNode: '";\n function toggle_ico'>, <django.template.defaulttags.URLNode object at 0x7fa74ea49250>, <TextNode: '", // was toggle_favorit'>, <ForNode: for card in cards, tail_len: 3>, <TextNode: '\n\n\n<!--\n </div>\n</div>\n-'>, <IfNode>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n '>, <ForNode: for i in cards.paginator.page_range, tail_len: 3>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n </ul>\n </nav>\n <!-'>] |
self | <IfNode> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 938, in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = node.render_annotated(context)…
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | ('", // was toggle_favorite_url\n' ' type: "GET",\n' ' data: `card_id=${card_id}`,\n' ' success: (response) => {\n' ' console.log(response);\n' ' if (response.status) {\n' ' if (response.is_favorite) {\n' ' $(`#fav-icon-${card_id}`).addClass("text-danger");\n' ' $(`#fav-icon-${card_id}`).text("update");\n' ' } else {\n' ' $(`#fav-icon-${card_id}`).removeClass("text-danger");\n' ' $(`#fav-icon-${card_id}`).text("update");\n' ' }\n' ' $(`#fav-icon-${card_id}`).show();\n' ' }\n' ' },\n' ' });\n' ' }\n' ' </script>\n' '\n' '\n' '\n' '<!-- Cards ' 'https://medium.com/geekculture/tiny-django-tutorial-bootstrap-cards-25e8dde6f21a ' '-->\n' ' ') |
bits | ['\n', '', '\n', '', '\n', '', '\n' '\n' '\n' '\n' '<script ' 'src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>\n' '<script ' 'src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"></script>\n' '\n' '\n' '<script>\n' ' \n' ' // let toggle_favorite_url = "', '/toggle_favorite', '";\n' ' function toggle_icon(card_id) {\n' ' if (!card_id) {\n' ' return;\n' ' }\n' ' \n' ' $.ajax({\n' ' url: "', '/toggle_favorite', '", // was toggle_favorite_url\n' ' type: "GET",\n' ' data: `card_id=${card_id}`,\n' ' success: (response) => {\n' ' console.log(response);\n' ' if (response.status) {\n' ' if (response.is_favorite) {\n' ' $(`#fav-icon-${card_id}`).addClass("text-danger");\n' ' $(`#fav-icon-${card_id}`).text("update");\n' ' } else {\n' ' $(`#fav-icon-${card_id}`).removeClass("text-danger");\n' ' $(`#fav-icon-${card_id}`).text("update");\n' ' }\n' ' $(`#fav-icon-${card_id}`).show();\n' ' }\n' ' },\n' ' });\n' ' }\n' ' </script>\n' '\n' '\n' '\n' '<!-- Cards ' 'https://medium.com/geekculture/tiny-django-tutorial-bootstrap-cards-25e8dde6f21a ' '-->\n' ' '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
node | <ForNode: for card in cards, tail_len: 3> |
self | [<TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74ea49070>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74ea49d30>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74ea49520>, <TextNode: '\n\n\n\n<script src="https://'>, <django.template.defaulttags.URLNode object at 0x7fa74ea495b0>, <TextNode: '";\n function toggle_ico'>, <django.template.defaulttags.URLNode object at 0x7fa74ea49250>, <TextNode: '", // was toggle_favorit'>, <ForNode: for card in cards, tail_len: 3>, <TextNode: '\n\n\n<!--\n </div>\n</div>\n-'>, <IfNode>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n '>, <ForNode: for i in cards.paginator.page_range, tail_len: 3>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n\n '>, <IfNode>, <TextNode: '\n </ul>\n </nav>\n <!-'>] |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <ForNode: for card in cards, tail_len: 3> |
/usr/local/lib/python3.8/dist-packages/django/template/defaulttags.py
, line 211, in render
unpacked_vars = dict(zip(self.loopvars, item))
pop_context = True
context.update(unpacked_vars)
else:
context[self.loopvars[0]] = item
for node in self.nodelist_loop:
nodelist.append(node.render_annotated(context))…
if pop_context:
# Pop the loop variables pushed on to the context to avoid
# the context ending up in an inconsistent state when other
# tags (e.g., include and with) push data to context.
context.pop()
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
i | 18 |
item | <Card: The Biggest Shark in the World. Meet the Whale Shark, the biggest fish in the world. Alex and the crew talk to Jesse Cochran and Alex Kattan, two Marine Biologists at KAUST who study the unique ecosystem of The Red Sea. > |
len_values | 20 |
loop_dict | {'counter': 19, 'counter0': 18, 'first': False, 'last': False, 'parentloop': {}, 'revcounter': 2, 'revcounter0': 1} |
node | <django.template.loader_tags.IncludeNode object at 0x7fa74ea490a0> |
nodelist | ['\n\n ', '\n' '\n' '\n' '\n' '\n' '\n' '\n' '\n' '\n' '\n' '\n' '<head>\n' ' \n' ' <link rel="stylesheet" href="/static/star-ratings/css/star-ratings.css">\n' ' <script type="text/javascript" ' 'src="/static/star-ratings/js/dist/star-ratings.min.js"></script>\n' '\n' '\n' '<style>\n' '\n' '\n' '.star-ratings-rating-average {\n' ' display: none;\n' '}\n' '</style>\n' '\n' '\n' '</head>\n' '<body>\n' '\n' '\n' '\n' '<div class="card" style="width: 20rem; margin: 10px">\n' ' <img src="" class="card-img-top" >\n' ' <div class="card-body">\n' '\n' ' \n' ' <a href="/?category=Biology" style="text-decoration:none"><h5 ' 'class="card-title">Biology</h5></a> \n' ' \n' ' \n' '\n' '\n' ' <div style="display: flex; flex-direction: row">\n' ' \n' ' \n' ' <a href="15396"> <img ' 'src="https://img.youtube.com/vi/_N23jFSrouo/0.jpg" width="100%"></a>\n' ' \n' '\n' ' \n' '\n' '\n' '\n' ' \n' '\n' ' \n' ' </div>\n' ' <p> <b> Gain Control in Olfactory Circuits</b></p>\n' ' <p class="card-text">Gain Control in Olfactory Circuits - All sensory ' 'systems must control the gain of incoming signals. Watch and listen as ' 'Rachel Wilson and colleagues take you on a personally guided tour of their ' 'study...</p>\n' '\n' '\n' '\n' ' \n' '\n' '\n' ' <a href="https://wesharescience.com/15396" class="btn btn-primary" ' 'style="width:80%; height: 40px;">Watch</a> \n' '\n' '\n' '\n' '\n' ' \n' ' \n' '\n' '\n' ' <button type="button" class="btn btn-primary" style="width:18%; height: ' '40px;"\n' ' data-toggle="modal" data-target="#loginModalwatch">\n' ' <span class="material-symbols-outlined " id="fav-icon-15396" title="Add ' 'to my watch-later list" >\n' ' update\n' ' </span>\n' ' </button>\n' '\n' ' \n' '\n' ' \n' '\n' '\n' '\n' '\n' '\n' ' </div>\n' '\n' '\n' '\n' '\n' '</div>\n' '\n' '</body>', '\n\n', '\n\n ', '\n' '\n' '\n' '\n' '\n' '\n' '\n' '\n' '\n' '\n' '\n' '<head>\n' ' \n' ' <link rel="stylesheet" href="/static/star-ratings/css/star-ratings.css">\n' ' <script type="text/javascript" ' 'src="/static/star-ratings/js/dist/star-ratings.min.js"></script>\n' '\n' '\n' '<style>\n' '\n' '\n' '.star-ratings-rating-average {\n' ' display: none;\n' '}\n' '</style>\n' '\n' '\n' '</head>\n' '<body>\n' '\n' '\n' '\n' '<div class="card" style="width: 20rem; margin: 10px">\n' ' <img src="" class="card-img-top" >\n' ' <div class="card-body">\n' '\n' ' \n' ' <a href="/?category=Biology" style="text-decoration:none"><h5 ' 'class="card-title">Biology</h5></a> \n' ' \n' ' \n' '\n' '\n' ' <div style="display: flex; flex-direction: row">\n' ' \n' ' \n' ' <a href="14931"> <img ' 'src="https://img.youtube.com/vi/5KTHzJOS3wU/0.jpg" width="100%"></a>\n' ' \n' '\n' ' \n' '\n' '\n' '\n' ' \n' '\n' ' \n' ' </div>\n' ' <p> <b> In Vivo Imaging of Neuron and Glial Cell Activity with a New ' 'GCaMP5 Reporter Mouse</b></p>\n' ' <p class="card-text">In this video abstract, we present a new ' 'Cre-dependent GCaMP5G reporter mouse (PC::G5-tdT) targeted the PolR2a locus. ' 'We demonstrate the utility of this mouse line for imaging calcium activity ' 'in neur...</p>\n' '\n' '\n' '\n' ' \n' '\n' '\n' ' <a href="https://wesharescience.com/14931" class="btn btn-primary" ' 'style="width:80%; height: 40px;">Watch</a> \n' '\n' '\n' '\n' '\n' ' \n' ' \n' '\n' '\n' ' <button type="button" class="btn btn-primary" style="width:18%; height: ' '40px;"\n' ' data-toggle="modal" data-target="#loginModalwatch">\n' ' <span class="material-symbols-outlined " id="fav-icon-14931" title="Add ' 'to my watch-later list" >\n' ' update\n' ' </span>\n' ' </button>\n' '\n' ' \n' '\n' ' \n' '\n' '\n' '\n' '\n' '\n' ' </div>\n' '\n' '\n' '\n' '\n' '</div>\n' '\n' '</body>', '\n\… <trimmed 35671 bytes string> |
num_loopvars | 1 |
parentloop | {} |
pop_context | False |
self | <ForNode: for card in cards, tail_len: 3> |
unpack | False |
values | <Page 10 of 60> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.loader_tags.IncludeNode object at 0x7fa74ea490a0> |
/usr/local/lib/python3.8/dist-packages/django/template/loader_tags.py
, line 195, in render
values = {
name: var.resolve(context)
for name, var in self.extra_context.items()
}
if self.isolated_context:
return template.render(context.new(values))
with context.push(**values):
return template.render(context)…
@register.tag('block')
def do_block(parser, token):
"""
Define a block that can be overridden by child templates.
Variable | Value |
---|---|
cache | {('each_card.html',): <django.template.base.Template object at 0x7fa74f5a7a60>} |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.loader_tags.IncludeNode object at 0x7fa74ea490a0> |
template | <django.template.base.Template object at 0x7fa74f5a7a60> |
template_name | ('each_card.html',) |
values | {} |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 172, in render
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
context.template_name = self.name
return self._render(context)
else:
return self._render(context)…
def compile_nodelist(self):
"""
Parse and compile the template source into a nodelist. If debug
is True and an exception occurs during parsing, the exception is
annotated with contextual line information where it occurred in the
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.base.Template object at 0x7fa74f5a7a60> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 162, in _render
self.nodelist = self.compile_nodelist()
def __iter__(self):
for node in self.nodelist:
yield from node
def _render(self, context):
return self.nodelist.render(context)…
def render(self, context):
"Display stage -- can be called many times"
with context.render_context.push_state(self):
if context.template is None:
with context.bind_template(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <django.template.base.Template object at 0x7fa74f5a7a60> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 938, in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = node.render_annotated(context)…
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n' |
bits | ['\n'] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
node | <Block Node: content. Contents: [<TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56ed30>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56e550>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56e0a0>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56ef10>, <TextNode: '\n\n\n\n\n\n<head>\n \n <link re'>, <django.templatetags.static.StaticNode object at 0x7fa74f56e430>, <TextNode: '">\n <script type="text/j'>, <django.templatetags.static.StaticNode object at 0x7fa74f56e7c0>, <TextNode: '"></script>\n\n\n<style>\n\n\n.'>, <TextNode: '\n<div class="card" style='>, <Variable Node: card.image>, <TextNode: '" class="card-img-top" >\n'>, <IfNode>, <TextNode: '\n \n\n\n <div style="d'>, <IfNode>, <TextNode: '\n\n\n\n \n\n \n </d'>, <Variable Node: card.video_url|video_title>, <TextNode: '</b></p>\n <p class="ca'>, <Variable Node: card.description|slice:":200">, <TextNode: '...</p>\n\n\n\n \n\n\n <a '>, <Variable Node: card.id>, <TextNode: '" class="btn btn-primary"'>, <IfNode>, <TextNode: '\n\n\n\n\n\n </div>\n\n\n\n\n</div>'>]> |
self | [<TextNode: '\n'>, <Block Node: content. Contents: [<TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56ed30>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56e550>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56e0a0>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56ef10>, <TextNode: '\n\n\n\n\n\n<head>\n \n <link re'>, <django.templatetags.static.StaticNode object at 0x7fa74f56e430>, <TextNode: '">\n <script type="text/j'>, <django.templatetags.static.StaticNode object at 0x7fa74f56e7c0>, <TextNode: '"></script>\n\n\n<style>\n\n\n.'>, <TextNode: '\n<div class="card" style='>, <Variable Node: card.image>, <TextNode: '" class="card-img-top" >\n'>, <IfNode>, <TextNode: '\n \n\n\n <div style="d'>, <IfNode>, <TextNode: '\n\n\n\n \n\n \n </d'>, <Variable Node: card.video_url|video_title>, <TextNode: '</b></p>\n <p class="ca'>, <Variable Node: card.description|slice:":200">, <TextNode: '...</p>\n\n\n\n \n\n\n <a '>, <Variable Node: card.id>, <TextNode: '" class="btn btn-primary"'>, <IfNode>, <TextNode: '\n\n\n\n\n\n </div>\n\n\n\n\n</div>'>]>, <TextNode: '</body>'>] |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <Block Node: content. Contents: [<TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56ed30>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56e550>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56e0a0>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56ef10>, <TextNode: '\n\n\n\n\n\n<head>\n \n <link re'>, <django.templatetags.static.StaticNode object at 0x7fa74f56e430>, <TextNode: '">\n <script type="text/j'>, <django.templatetags.static.StaticNode object at 0x7fa74f56e7c0>, <TextNode: '"></script>\n\n\n<style>\n\n\n.'>, <TextNode: '\n<div class="card" style='>, <Variable Node: card.image>, <TextNode: '" class="card-img-top" >\n'>, <IfNode>, <TextNode: '\n \n\n\n <div style="d'>, <IfNode>, <TextNode: '\n\n\n\n \n\n \n </d'>, <Variable Node: card.video_url|video_title>, <TextNode: '</b></p>\n <p class="ca'>, <Variable Node: card.description|slice:":200">, <TextNode: '...</p>\n\n\n\n \n\n\n <a '>, <Variable Node: card.id>, <TextNode: '" class="btn btn-primary"'>, <IfNode>, <TextNode: '\n\n\n\n\n\n </div>\n\n\n\n\n</div>'>]> |
/usr/local/lib/python3.8/dist-packages/django/template/loader_tags.py
, line 53, in render
return "<Block Node: %s. Contents: %r>" % (self.name, self.nodelist)
def render(self, context):
block_context = context.render_context.get(BLOCK_CONTEXT_KEY)
with context.push():
if block_context is None:
context['block'] = self
result = self.nodelist.render(context)…
else:
push = block = block_context.pop(self.name)
if block is None:
block = self
# Create new block so we can store context without thread-safety issues.
block = type(self)(block.name, block.nodelist)
Variable | Value |
---|---|
block_context | None |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <Block Node: content. Contents: [<TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56ed30>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56e550>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56e0a0>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56ef10>, <TextNode: '\n\n\n\n\n\n<head>\n \n <link re'>, <django.templatetags.static.StaticNode object at 0x7fa74f56e430>, <TextNode: '">\n <script type="text/j'>, <django.templatetags.static.StaticNode object at 0x7fa74f56e7c0>, <TextNode: '"></script>\n\n\n<style>\n\n\n.'>, <TextNode: '\n<div class="card" style='>, <Variable Node: card.image>, <TextNode: '" class="card-img-top" >\n'>, <IfNode>, <TextNode: '\n \n\n\n <div style="d'>, <IfNode>, <TextNode: '\n\n\n\n \n\n \n </d'>, <Variable Node: card.video_url|video_title>, <TextNode: '</b></p>\n <p class="ca'>, <Variable Node: card.description|slice:":200">, <TextNode: '...</p>\n\n\n\n \n\n\n <a '>, <Variable Node: card.id>, <TextNode: '" class="btn btn-primary"'>, <IfNode>, <TextNode: '\n\n\n\n\n\n </div>\n\n\n\n\n</div>'>]> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 938, in render
# extend_nodelist().
contains_nontext = False
def render(self, context):
bits = []
for node in self:
if isinstance(node, Node):
bit = node.render_annotated(context)…
else:
bit = node
bits.append(str(bit))
return mark_safe(''.join(bits))
def get_nodes_by_type(self, nodetype):
Variable | Value |
---|---|
bit | '\n\n\n\n \n\n \n </div>\n <p> <b> ' |
bits | ['\n', '', '\n', '', '\n', '', '\n', '', '\n\n\n\n\n\n<head>\n \n <link rel="stylesheet" href="', '/static/star-ratings/css/star-ratings.css', '">\n <script type="text/javascript" src="', '/static/star-ratings/js/dist/star-ratings.min.js', '"></script>\n' '\n' '\n' '<style>\n' '\n' '\n' '.star-ratings-rating-average {\n' ' display: none;\n' '}\n' '</style>\n' '\n' '\n' '</head>\n' '<body>\n' '\n' '\n', '\n<div class="card" style="width: 20rem; margin: 10px">\n <img src="', '', '" class="card-img-top" >\n <div class="card-body">\n\n ', '\n' ' <a href="/?category=Biology" style="text-decoration:none"><h5 ' 'class="card-title">Biology</h5></a> \n' ' ', '\n \n\n\n <div style="display: flex; flex-direction: row">\n ', '\n' ' \n' ' <a href="15684"> <img src="https://img.youtube.com/vi/watch/0.jpg" ' 'width="100%"></a>\n' ' \n' '\n' ' ', '\n\n\n\n \n\n \n </div>\n <p> <b> '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
node | <Variable Node: card.video_url|video_title> |
self | [<TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56ed30>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56e550>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56e0a0>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7fa74f56ef10>, <TextNode: '\n\n\n\n\n\n<head>\n \n <link re'>, <django.templatetags.static.StaticNode object at 0x7fa74f56e430>, <TextNode: '">\n <script type="text/j'>, <django.templatetags.static.StaticNode object at 0x7fa74f56e7c0>, <TextNode: '"></script>\n\n\n<style>\n\n\n.'>, <TextNode: '\n<div class="card" style='>, <Variable Node: card.image>, <TextNode: '" class="card-img-top" >\n'>, <IfNode>, <TextNode: '\n \n\n\n <div style="d'>, <IfNode>, <TextNode: '\n\n\n\n \n\n \n </d'>, <Variable Node: card.video_url|video_title>, <TextNode: '</b></p>\n <p class="ca'>, <Variable Node: card.description|slice:":200">, <TextNode: '...</p>\n\n\n\n \n\n\n <a '>, <Variable Node: card.id>, <TextNode: '" class="btn btn-primary"'>, <IfNode>, <TextNode: '\n\n\n\n\n\n </div>\n\n\n\n\n</div>'>] |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 905, in render_annotated
"""
Render the node. If debug is True and an exception occurs during
rendering, the exception is annotated with contextual line information
where it occurred in the template. For internal usage this method is
preferred over using the render method directly.
"""
try:
return self.render(context)…
except Exception as e:
if context.template.engine.debug and not hasattr(e, 'template_debug'):
e.template_debug = context.render_context.template.get_exception_info(e, self.token)
raise
def __iter__(self):
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <Variable Node: card.video_url|video_title> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 988, in render
self.filter_expression = filter_expression
def __repr__(self):
return "<Variable Node: %s>" % self.filter_expression
def render(self, context):
try:
output = self.filter_expression.resolve(context)…
except UnicodeDecodeError:
# Unicode conversion can fail sometimes for reasons out of our
# control (e.g. exception rendering). In that case, we fail
# quietly.
return ''
return render_value_in_context(output, context)
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
self | <Variable Node: card.video_url|video_title> |
/usr/local/lib/python3.8/dist-packages/django/template/base.py
, line 698, in resolve
else:
arg_vals.append(arg.resolve(context))
if getattr(func, 'expects_localtime', False):
obj = template_localtime(obj, context.use_tz)
if getattr(func, 'needs_autoescape', False):
new_obj = func(obj, autoescape=context.autoescape, *arg_vals)
else:
new_obj = func(obj, *arg_vals)…
if getattr(func, 'is_safe', False) and isinstance(obj, SafeData):
obj = mark_safe(new_obj)
else:
obj = new_obj
return obj
Variable | Value |
---|---|
arg_vals | [] |
args | [] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'cards': <Page 10 of 60>, 'categories': <QuerySet [{'id': 120, 'name': 'Agriculture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 675502, tzinfo=<UTC>)}, {'id': 132, 'name': 'Anthropology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 770292, tzinfo=<UTC>)}, {'id': 128, 'name': 'Archaeology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 736245, tzinfo=<UTC>)}, {'id': 129, 'name': 'Architecture', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 745625, tzinfo=<UTC>)}, {'id': 151, 'name': 'Astronomy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 59, 858463, tzinfo=<UTC>)}, {'id': 139, 'name': 'Biology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 849210, tzinfo=<UTC>)}, {'id': 140, 'name': 'Business', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 859857, tzinfo=<UTC>)}, {'id': 127, 'name': 'Chemistry', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 727835, tzinfo=<UTC>)}, {'id': 146, 'name': 'Climate Change', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 103894, tzinfo=<UTC>)}, {'id': 118, 'name': 'Communications', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 663654, tzinfo=<UTC>)}, {'id': 145, 'name': 'Computer Science', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 60501, tzinfo=<UTC>)}, {'id': 147, 'name': 'Cybersecurity', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 239084, tzinfo=<UTC>)}, {'id': 141, 'name': 'Economics', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 898770, tzinfo=<UTC>)}, {'id': 123, 'name': 'Education', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 693868, tzinfo=<UTC>)}, {'id': 144, 'name': 'Energy', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 56, 49468, tzinfo=<UTC>)}, {'id': 130, 'name': 'Engineering', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 752459, tzinfo=<UTC>)}, {'id': 138, 'name': 'Gender', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 840101, tzinfo=<UTC>)}, {'id': 131, 'name': 'Geology', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 764575, tzinfo=<UTC>)}, {'id': 135, 'name': 'History', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 791560, tzinfo=<UTC>)}, {'id': 124, 'name': 'International Affairs', 'title': '0', 'created_at': datetime.datetime(2022, 12, 27, 3, 51, 55, 699174, tzinfo=<UTC>)}, '...(remaining elements truncated)...']>, 'caterogy_select': 'Biology', 'card_form': <CardForm bound=False, valid=False, fields=(description;video_url;category;article_url;doi)>, 'login_form': <LoginForm bound=True, valid=False, fields=(username;password)>, 'signup_form': <SignUpForm bound=True, valid=False, fields=(username;email;first_name;last_name;password1;password2;check)>, 'pagination': <django.core.paginator.Paginator object at 0x7fa74f5c11c0>, 'page': <Page 1 of 1>, 'q': None, 'has_previous': True, 'has_next': True, 'wishlist': []}] |
func | <function video_title at 0x7fa750522f70> |
ignore_failures | False |
obj | 'https://www.youtube.com/watch?t=66&v=GtXqsPWn-pQ' |
self | <django.template.base.FilterExpression object at 0x7fa74f471670> |
/usr/local/lib/python3.8/dist-packages/django/template/defaultfilters.py
, line 46, in _dec
"""
def _dec(*args, **kwargs):
args = list(args)
args[0] = str(args[0])
if (isinstance(args[0], SafeData) and
getattr(_dec._decorated_function, 'is_safe', False)):
return mark_safe(func(*args, **kwargs))
return func(*args, **kwargs)…
# Include a reference to the real function (used to check original
# arguments by the template parser, and to bear the 'is_safe' attribute
# when multiple decorators are applied).
_dec._decorated_function = getattr(func, '_decorated_function', func)
Variable | Value |
---|---|
_dec | <function video_title at 0x7fa750522f70> |
args | ['https://www.youtube.com/watch?t=66&v=GtXqsPWn-pQ'] |
func | <function video_title at 0x7fa750522ee0> |
kwargs | {} |
/var/www/html/wesharescience.com/public_html/wesharescience/./cards/templatetags/get_title.py
, line 39, in video_title
you_video_id = "ScMzIvxBSi4"
query = urlparse(url)
if query.hostname == 'youtu.be':
you_video_id = query.path[1:]
if query.hostname in ('www.youtube.com', 'youtube.com'):
if query.path == '/watch':
p = parse_qs(query.query)
you_video_id = p['v'][0]…
if query.path[:7] == '/embed/':
you_video_id = query.path.split('/')[2]
if query.path[:3] == '/v/':
you_video_id = query.path.split('/')[2]
VideoID = you_video_id
Variable | Value |
---|---|
p | {'amp;v': ['GtXqsPWn-pQ'], 't': ['66']} |
query | ParseResult(scheme='https', netloc='www.youtube.com', path='/watch', params='', query='t=66&v=GtXqsPWn-pQ', fragment='') |
url | 'https://www.youtube.com/watch?t=66&v=GtXqsPWn-pQ' |
you_video_id | 'ScMzIvxBSi4' |
AnonymousUser
Variable | Value |
---|---|
category | 'Biology' |
page | '10' |
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
CONTENT_LENGTH | '' |
CONTENT_TYPE | '' |
CSRF_COOKIE | 'EXhPqPEMnUPuU89E4EHn0l3csHjcigI8Az9t0ZM8UXcGB3oKCQjX8lMWsBcKAW1F' |
CSRF_COOKIE_USED | True |
DOCUMENT_ROOT | '/var/www/html/wwesharescience.com/public_html/wesharesience' |
HTTPS | 'on' |
HTTP_ACCEPT | '*/*' |
HTTP_ACCEPT_ENCODING | 'gzip, br' |
HTTP_CDN_LOOP | 'cloudflare' |
HTTP_CF_CONNECTING_IP | '3.227.239.9' |
HTTP_CF_IPCOUNTRY | 'US' |
HTTP_CF_RAY | '86bb38d91a4f381e-EWR' |
HTTP_CF_VISITOR | '{"scheme":"https"}' |
HTTP_CONNECTION | 'Keep-Alive' |
HTTP_HOST | 'wesharescience.com' |
HTTP_USER_AGENT | 'claudebot' |
HTTP_X_FORWARDED_FOR | '3.227.239.9' |
HTTP_X_FORWARDED_PROTO | 'https' |
PATH_INFO | '/' |
QUERY_STRING | 'category=Biology&page=10' |
REMOTE_ADDR | '172.70.114.248' |
REMOTE_PORT | '12000' |
REQUEST_METHOD | 'GET' |
REQUEST_SCHEME | 'https' |
REQUEST_URI | '/?category=Biology&page=10' |
SCRIPT_NAME | '' |
SERVER_NAME | 'wesharescience.com' |
SERVER_PORT | '443' |
SERVER_PROTOCOL | 'HTTP/1.1' |
uwsgi.node | b'sciencepods' |
uwsgi.version | b'2.0.19.1' |
wsgi.errors | <_io.TextIOWrapper name=2 mode='w' encoding='UTF-8'> |
wsgi.file_wrapper | <built-in function uwsgi_sendfile> |
wsgi.input | <uwsgi._Input object at 0x7fa74f469a70> |
wsgi.multiprocess | True |
wsgi.multithread | False |
wsgi.run_once | False |
wsgi.url_scheme | 'https' |
wsgi.version | (1, 0) |
wesharescience.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [] |
ALLOWED_HOSTS | ['*'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
BASE_DIR | PosixPath('/var/www/html/wesharescience.com/public_html/wesharescience') |
CACHES | {'default': {'BACKEND': 'django.core.cache.backends.locmem.LocMemCache'}} |
CACHE_MIDDLEWARE_ALIAS | 'default' |
CACHE_MIDDLEWARE_KEY_PREFIX | '********************' |
CACHE_MIDDLEWARE_SECONDS | 600 |
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.sqlite3', 'HOST': '', 'NAME': PosixPath('/var/www/html/wesharescience.com/public_html/wesharescience/db.sqlite3'), 'OPTIONS': {}, 'PASSWORD': '********************', 'PORT': '', 'TEST': {'CHARSET': None, 'COLLATION': None, 'MIGRATE': True, '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', '%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.BigAutoField' |
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 | '[email protected]' |
DEFAULT_HASHING_ALGORITHM | 'sha256' |
DEFAULT_INDEX_TABLESPACE | '' |
DEFAULT_TABLESPACE | '' |
DISALLOWED_USER_AGENTS | [] |
EMAIL_BACKEND | 'django.core.mail.backends.smtp.EmailBackend' |
EMAIL_FILE_PATH | PosixPath('/var/www/html/wesharescience.com/public_html/wesharescience/sent_emails') |
EMAIL_HOST | 'smtp.gmail.com' |
EMAIL_HOST_PASSWORD | '********************' |
EMAIL_HOST_USER | '[email protected]' |
EMAIL_PORT | 587 |
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 | True |
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' |
IGNORABLE_404_URLS | [] |
INSTALLED_APPS | ['django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django_extensions', 'bootstrap5', 'home', 'cards', 'accounts', 'star_ratings', 'django_social_share', 'fontawesomefree', 'bootstrap_modal_forms', 'widget_tweaks', 'django.contrib.sites', 'django.contrib.sitemaps'] |
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'), ('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'), ('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', 'fa', 'ur'] |
LANGUAGE_CODE | 'en-us' |
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 | {} |
LOGGING_CONFIG | 'logging.config.dictConfig' |
LOGIN_REDIRECT_URL | '/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | '/' |
MANAGERS | [] |
MEDIA_ROOT | '' |
MEDIA_URL | '/' |
MESSAGE_STORAGE | 'django.contrib.messages.storage.fallback.FallbackStorage' |
MIDDLEWARE | ['django.middleware.security.SecurityMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PREPEND_WWW | False |
ROOT_URLCONF | 'wesharescience.urls' |
SECRET_KEY | '********************' |
SECURE_BROWSER_XSS_FILTER | False |
SECURE_CONTENT_TYPE_NOSNIFF | True |
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' |
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 | 'wesharescience.settings' |
SHORT_DATETIME_FORMAT | 'm/d/Y P' |
SHORT_DATE_FORMAT | 'm/d/Y' |
SIGNING_BACKEND | 'django.core.signing.TimestampSigner' |
SILENCED_SYSTEM_CHECKS | [] |
SITE_ID | 1 |
STAR_RATINGS_ANONYMOUS | True |
STAR_RATINGS_RATING_MODEL | 'star_ratings.Rating' |
STATICFILES_DIRS | [] |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | '/var/www/html/wesharescience.com/public_html/wesharescience/static/' |
STATIC_URL | '/static/' |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': ['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']}}] |
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 | 'UTC' |
USE_I18N | True |
USE_L10N | True |
USE_THOUSAND_SEPARATOR | False |
USE_TZ | True |
USE_X_FORWARDED_HOST | False |
USE_X_FORWARDED_PORT | False |
WSGI_APPLICATION | 'wesharescience.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.