That page contains no results
Request Method: | GET |
---|---|
Request URL: | https://al-bahri.com/products/category/general-hardware-items/?page=5 |
Django Version: | 3.2.8 |
Exception Type: | EmptyPage |
Exception Value: | That page contains no results |
Exception Location: | /home/al-bahri.com/public_html/lib/python3.8/site-packages/django/core/paginator.py, line 58, in validate_number |
Python Executable: | /home/al-bahri.com/public_html/bin/pyhton |
Python Version: | 3.8.10 |
Python Path: | ['', '/usr/local/lsws/fcgi-bin', '/home/al-bahri.com/public_html/bahri', '/home/al-bahri.com/public_html/lib/python38.zip', '/home/al-bahri.com/public_html/lib/python3.8', '/home/al-bahri.com/public_html/lib/python3.8/lib-dynload', '/usr/lib/python3.8', '/home/al-bahri.com/public_html/lib/python3.8/site-packages', '/usr/lib/python3.8/site-packages', '/usr/local/lib/python3.8/dist-packages', '/usr/lib/python3/dist-packages'] |
Server time: | Thu, 28 Mar 2024 13:13:38 +0000 |
In template /home/al-bahri.com/public_html/bahri/templates/base.html
, error at line 0
1 | {% load static %} |
---|---|
2 | {% load custom_tags %} |
3 | |
4 | <!DOCTYPE html> |
5 | <html lang="en"> |
6 | |
7 | |
8 | |
9 | <head> |
10 | <meta charset="UTF-8"> |
/home/al-bahri.com/public_html/lib/python3.8/site-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 | EmptyPage('That page contains no results') |
get_response | <bound method BaseHandler._get_response of <django.core.handlers.wsgi.WSGIHandler object at 0x7f8a01dfa9d0>> |
request | <WSGIRequest: GET '/products/category/general-hardware-items/?page=5'> |
/home/al-bahri.com/public_html/lib/python3.8/site-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 item_by_category at 0x7f8a0185ef70> |
callback_args | () |
callback_kwargs | {'category_slug': 'general-hardware-items'} |
middleware_method | <bound method CsrfViewMiddleware.process_view of <django.middleware.csrf.CsrfViewMiddleware object at 0x7f8a019da6d0>> |
request | <WSGIRequest: GET '/products/category/general-hardware-items/?page=5'> |
response | None |
self | <django.core.handlers.wsgi.WSGIHandler object at 0x7f8a01dfa9d0> |
wrapped_callback | <function item_by_category at 0x7f8a0185ef70> |
/home/al-bahri.com/public_html/bahri/ecommerce/views.py
, line 1210, in item_by_category
'is_paginated': is_paginated,
}
return render(request, './ecommerce/category.html', context)…
def item_by_brand(request, brand_slug):
brands = Brands.objects.filter(slug=brand_slug)
Variable | Value |
---|---|
brands | <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']> |
categories | <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']> |
category | <Categories: General Hardware Items> |
category_slug | 'general-hardware-items' |
context | {'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'is_paginated': True, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'products': <Page 2 of 2>} |
is_paginated | True |
order | 'name' |
page | '5' |
page_range | <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0> |
paginator | <django.core.paginator.Paginator object at 0x7f8a018c6700> |
parent_category | <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]> |
per_page | 100 |
products | <Page 2 of 2> |
request | <WSGIRequest: GET '/products/category/general-hardware-items/?page=5'> |
/home/al-bahri.com/public_html/lib/python3.8/site-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 | {'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'is_paginated': True, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'products': <Page 2 of 2>} |
request | <WSGIRequest: GET '/products/category/general-hardware-items/?page=5'> |
status | None |
template_name | './ecommerce/category.html' |
using | None |
/home/al-bahri.com/public_html/lib/python3.8/site-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 | {'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'is_paginated': True, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'products': <Page 2 of 2>} |
request | <WSGIRequest: GET '/products/category/general-hardware-items/?page=5'> |
template | <django.template.backends.django.Template object at 0x7f8a01835c10> |
template_name | './ecommerce/category.html' |
using | None |
/home/al-bahri.com/public_html/lib/python3.8/site-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}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
request | <WSGIRequest: GET '/products/category/general-hardware-items/?page=5'> |
self | <django.template.backends.django.Template object at 0x7f8a01835c10> |
/home/al-bahri.com/public_html/lib/python3.8/site-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}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
self | <django.template.base.Template object at 0x7f8a01805400> |
/home/al-bahri.com/public_html/lib/python3.8/site-packages/django/test/utils.py
, line 100, in instrumented_test_render
def instrumented_test_render(self, context):
"""
An instrumented Template render method, providing a signal that can be
intercepted by the test Client.
"""
template_rendered.send(sender=self, template=self, context=context)
return self.nodelist.render(context)…
class _TestState:
pass
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
self | <django.template.base.Template object at 0x7f8a01805400> |
/home/al-bahri.com/public_html/lib/python3.8/site-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' |
bits | [' \n\n'] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
node | <ExtendsNode: extends "base.html"> |
self | [<TextNode: ' \n\n'>, <ExtendsNode: extends "base.html">] |
/home/al-bahri.com/public_html/lib/python3.8/site-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}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
self | <ExtendsNode: extends "base.html"> |
/home/al-bahri.com/public_html/lib/python3.8/site-packages/django/template/loader_tags.py
, line 150, in render
compiled_parent.nodelist.get_nodes_by_type(BlockNode)}
block_context.add_blocks(blocks)
break
# Call Template._render explicitly so the parser context stays
# the same.
with context.render_context.push_state(compiled_parent, isolated_context=False):
return compiled_parent._render(context)…
class IncludeNode(Node):
context_key = '__include_context'
def __init__(self, template, *args, extra_context=None, isolated_context=False, **kwargs):
Variable | Value |
---|---|
block_context | <django.template.loader_tags.BlockContext object at 0x7f8a017d62b0> |
blocks | {'content': <Block Node: content. Contents: [<TextNode: '\n\n\n\n\n\n\n\n'>]>} |
compiled_parent | <django.template.base.Template object at 0x7f8a017bbf70> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
node | <django.template.defaulttags.LoadNode object at 0x7f8a017d62e0> |
self | <ExtendsNode: extends "base.html"> |
/home/al-bahri.com/public_html/lib/python3.8/site-packages/django/test/utils.py
, line 100, in instrumented_test_render
def instrumented_test_render(self, context):
"""
An instrumented Template render method, providing a signal that can be
intercepted by the test Client.
"""
template_rendered.send(sender=self, template=self, context=context)
return self.nodelist.render(context)…
class _TestState:
pass
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
self | <django.template.base.Template object at 0x7f8a017bbf70> |
/home/al-bahri.com/public_html/lib/python3.8/site-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', '', ' \n' '\n' '<!DOCTYPE html>\n' '<html lang="en">\n' '\n' '\n' '\n' '<head>\n' ' <meta charset="UTF-8">\n' ' \n' '\n' ' <meta name="viewport" content="width=device-width, initial-scale=1.0, ' 'minimum-scale=1.0">\n' ' \n' ' ', '', '\n <title>', 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety ' 'Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, ' 'Ras Al Khaimah and Fujairah)', '</title>\n <meta name="description" content="', 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and ' 'renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, ' 'Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers ' 'since 40+ years.', '"/>\n <meta name="keywords" content="', 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety ' 'Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, ' 'Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, ' 'Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top ' 'Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al ' 'Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in ' 'UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', '"/>\n' ' <!-- Open Graph Meta Tags -->\n' ' <meta property="og:title" content="', 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety ' 'Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, ' 'Ras Al Khaimah and Fujairah)', '"/>\n <meta property="og:description" content="', 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and ' 'renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, ' 'Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers ' 'since 40+ years.', '"/>\n <meta property="og:image" content="', 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', '"/>\n ', '', '\n <meta property="og:url" content=\'', 'https://al-bahri.com/products/category/general-hardware-items/?page=5', '\'/>\n\n <meta property="og:type" content="', 'website', '" />\n' '\n' ' <meta property="og:image:width" content="1200" />\n' ' <meta property="og:image:height" content="630" />\n' ' <meta name="author" content="Madhav Dhungana"/>\n' ' <link rel ="canonical" href="', 'https://al-bahri.com/products/category/general-hardware-items/?page=5', '" />\n' '\n' '\n' '\n' ' <!-- Favicon -->\n' '\n' ' <link rel="icon" type="image/png" href="', '/static/assets/images/icons/favicon.png', '">\n' '\n' '\n' '\n' ' <!-- WebFont.js -->\n' '\n' ' <script>\n' '\n' ' WebFontConfig = {\n' '\n' " google: { families: ['Poppins:400,500,600,700,800'] }\n" '\n' ' };\n' '\n' ' (function (d) {\n' '\n' " var wf = d.createElement('script'), s = d.scripts[0];\n" '\n' " wf.src = '", '/static/assets/js/webfont.js', "';\n" '\n' ' wf.async = true;\n' '\n' ' s.parentNode.insertBefore(wf, s);\n' '\n' ' })(document);\n' '\n' '</script>\n' '\n' '\n' '\n' '<link rel="preload" href="', '/static/assets/vendor/fontawesome-free/webfonts/fa-regular-400.woff2', '" as="font" type="font/woff2"\n' '\n' ' crossorigin="anonymous">\n' '\n' '<link rel="preload" href="', '/static/assets/vendor/fontawesome-free/webfonts/fa-solid-900.woff2', '" as="font" type="font/woff2"\n' '\n' ' crossorigin="anonymous">\n' '\n' '<link rel="preload" href="', '/static/assets/vendor/fontawesome-free/webfonts/fa-brands-400.woff2', '" as="font" type="font/woff2"\n' '\n' ' crossorigin="anonymous">\n' '\n' '<link rel="preload" href="', '/static/assets/fonts/wolmart.ttf%3Fpng09e', '" as="font" type="font/ttf " crossorigin="anonymous">\n' '\n' '\n' '\n' '\n' '\n' '\n' '\n' '<!-- Plugins CSS -->\n' '\n' '<link rel="stylesheet" type="text/css" href… <trimmed 236963 bytes string> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
node | <Block Node: content. Contents: [<TextNode: '\n\n\n\n\n\n\n\n'>]> |
self | [<django.template.defaulttags.LoadNode object at 0x7f8a017d62e0>, <TextNode: '\n'>, <django.template.defaulttags.LoadNode object at 0x7f8a017d63d0>, <TextNode: ' \n\n<!DOCTYPE html>\n<htm'>, <django.template.library.SimpleNode object at 0x7f8a017d6490>, <TextNode: '\n <title>'>, <Variable Node: meta_data.meta_title>, <TextNode: '</title>\n <meta name="'>, <Variable Node: meta_data.meta_description|striptags>, <TextNode: '"/>\n <meta name="keywo'>, <Variable Node: meta_data.meta_keywords|striptags>, <TextNode: '"/>\n <!-- Open Graph M'>, <Variable Node: meta_data.meta_title>, <TextNode: '"/>\n <meta property="o'>, <Variable Node: meta_data.meta_description|striptags>, <TextNode: '"/>\n <meta property="o'>, <Variable Node: meta_data.og_image>, <TextNode: '"/>\n '>, <django.template.defaulttags.CommentNode object at 0x7f8a017d7070>, <TextNode: '\n <meta property="og:u'>, <Variable Node: meta_data.og_url>, <TextNode: '\'/>\n\n <meta property="'>, <Variable Node: meta_data.og_type>, <TextNode: '" />\n\n <meta property='>, <Variable Node: meta_data.og_url>, <TextNode: '" />\n\n\n\n <!-- Favicon '>, <django.templatetags.static.StaticNode object at 0x7f8a017d7610>, <TextNode: '">\n\n\n\n <!-- WebFont.js -'>, <django.templatetags.static.StaticNode object at 0x7f8a017d7730>, <TextNode: "';\n\n wf.async = tr">, <django.templatetags.static.StaticNode object at 0x7f8a017d7850>, <TextNode: '" as="font" type="font/wo'>, <django.templatetags.static.StaticNode object at 0x7f8a017d7970>, <TextNode: '" as="font" type="font/wo'>, <django.templatetags.static.StaticNode object at 0x7f8a017d7a90>, <TextNode: '" as="font" type="font/wo'>, <django.templatetags.static.StaticNode object at 0x7f8a017d7bb0>, <TextNode: '" as="font" type="font/tt'>, <django.templatetags.static.StaticNode object at 0x7f8a017d7cd0>, <TextNode: '">\n\n<link rel="stylesheet'>, <django.templatetags.static.StaticNode object at 0x7f8a017d7e20>, <TextNode: '">\n\n<link rel="stylesheet'>, <django.templatetags.static.StaticNode object at 0x7f8a017d7f70>, <TextNode: '">\n\n\n\n'>, <IfNode>, <TextNode: '\n\n\n\n\n\n\n\n</head>\n\n'>, <django.template.loader_tags.IncludeNode object at 0x7f8a01764130>, <TextNode: '\n\n\n\n'>, <Block Node: content. Contents: [<TextNode: '\n\n\n\n\n\n\n\n'>]>, <TextNode: '\n\n\n\n\n\n\n\n\n\n\n\n<!-- Start of'>, <django.template.defaulttags.CsrfTokenNode object at 0x7f8a01764310>, <TextNode: '\n\n '>, <django.template.defaulttags.URLNode object at 0x7f8a01764430>, <TextNode: '" class="logo-footer">\n\n '>, <django.templatetags.static.StaticNode object at 0x7f8a017644c0>, <TextNode: '" alt="logo-footer" width'>, <ForNode: for social in social, tail_len: 3>, <TextNode: '\n\n '>, <Variable Node: social.twitter>, <TextNode: '" class="social-icon soci'>, <Variable Node: social.instagram>, <TextNode: '" class="social-icon soci'>, <Variable Node: social.youtube>, <TextNode: '" class="social-icon soci'>, <Variable Node: social.pinterest>, <TextNode: '" class="social-icon soci'>, <ForNode: for meta in meta_info, tail_len: 2>, <TextNode: '. All Rights Reserved.</p'>, <django.templatetags.static.StaticNode object at 0x7f8a017652e0>, <TextNode: '" alt="payment" width="15'>, <django.template.defaulttags.URLNode object at 0x7f8a01765400>, <TextNode: '" class="sticky-link acti'>, <django.template.defaulttags.URLNode object at 0x7f8a01765490>, <TextNode: '" class="sticky-link">\n\n '>, <django.template.defaulttags.URLNode object at 0x7f8a01765580>, <TextNode: '" class="sticky-link">\n\n '>, <django.template.defaulttags.URLNode object at 0x7f8a01765670>, <TextNode: '" class="btn btn-dark btn'>, <django.template.defaulttags.URLNode object at 0x7f8a01765760>, <TextNode: '" class="btn btn-primary '>, <django.template.defaulttags.URLNode object at 0x7f8a01765850>, <TextNode: '" class="input-wrapper">\n'>, <django.template.defaulttags.URLNode object at 0x7f8a01765940>, <TextNode: '" method="get" class="i… <trimmed 6861 bytes string> |
/home/al-bahri.com/public_html/lib/python3.8/site-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}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
self | <Block Node: content. Contents: [<TextNode: '\n\n\n\n\n\n\n\n'>]> |
/home/al-bahri.com/public_html/lib/python3.8/site-packages/django/template/loader_tags.py
, line 62, in render
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)
block.context = context
context['block'] = block
result = block.nodelist.render(context)…
if push is not None:
block_context.push(self.name, push)
return result
def super(self):
if not hasattr(self, 'context'):
Variable | Value |
---|---|
block | <Block Node: content. Contents: [<TextNode: '\n\n\n\n <!-- Start of Main '>, <django.template.defaulttags.URLNode object at 0x7f8a01819df0>, <TextNode: '">Home</a></li>\n\n '>, <django.template.defaulttags.URLNode object at 0x7f8a01819b20>, <TextNode: '">Categories</a></li>\n\n '>, <django.templatetags.static.StaticNode object at 0x7f8a01819b50>, <TextNode: '); background-color: #FFC'>, <django.template.defaulttags.URLNode object at 0x7f8a01819c40>, <TextNode: '" class="btn btn-dark btn'>, <ForNode: for category in parent_category, tail_len: 5>, <TextNode: '\n '>, <ForNode: for child in category.get_children, tail_len: 5>, <TextNode: '\n '>, <ForNode: for brands in brands, tail_len: 7>, <TextNode: '\n '>, <ForNode: for product in products|dictsort:"priority", tail_len: 43>, <TextNode: ' \n\n\n\n '>, <Variable Node: products.start_index>, <TextNode: '-'>, <Variable Node: products.end_index>, <TextNode: ' of '>, <Variable Node: products.paginator.count>, <TextNode: '</span> Products\n '>, <IfNode>, <TextNode: '\n </div>\n\n'>]> |
block_context | <django.template.loader_tags.BlockContext object at 0x7f8a017d62b0> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
push | <Block Node: content. Contents: [<TextNode: '\n\n\n\n <!-- Start of Main '>, <django.template.defaulttags.URLNode object at 0x7f8a01819df0>, <TextNode: '">Home</a></li>\n\n '>, <django.template.defaulttags.URLNode object at 0x7f8a01819b20>, <TextNode: '">Categories</a></li>\n\n '>, <django.templatetags.static.StaticNode object at 0x7f8a01819b50>, <TextNode: '); background-color: #FFC'>, <django.template.defaulttags.URLNode object at 0x7f8a01819c40>, <TextNode: '" class="btn btn-dark btn'>, <ForNode: for category in parent_category, tail_len: 5>, <TextNode: '\n '>, <ForNode: for child in category.get_children, tail_len: 5>, <TextNode: '\n '>, <ForNode: for brands in brands, tail_len: 7>, <TextNode: '\n '>, <ForNode: for product in products|dictsort:"priority", tail_len: 43>, <TextNode: ' \n\n\n\n '>, <Variable Node: products.start_index>, <TextNode: '-'>, <Variable Node: products.end_index>, <TextNode: ' of '>, <Variable Node: products.paginator.count>, <TextNode: '</span> Products\n '>, <IfNode>, <TextNode: '\n </div>\n\n'>]> |
self | <Block Node: content. Contents: [<TextNode: '\n\n\n\n\n\n\n\n'>]> |
/home/al-bahri.com/public_html/lib/python3.8/site-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 | '</span> Products\n </p>\n ' |
bits | ['\n' '\n' '\n' '\n' ' <!-- Start of Main -->\n' '\n' ' <main class="main">\n' '\n' ' <!-- Start of Breadcrumb -->\n' '\n' ' <nav class="breadcrumb-nav">\n' '\n' ' <div class="container">\n' '\n' ' <ul class="breadcrumb bb-no">\n' '\n' ' <li><a href="', '/', '">Home</a></li>\n\n <li><a href="', '/products/categories', '">Categories</a></li>\n' '\n' ' \n' '\n' ' </ul>\n' '\n' ' </div>\n' '\n' ' </nav>\n' '\n' ' <!-- End of Breadcrumb -->\n' '\n' '\n' '\n' ' <!-- Start of Page Content -->\n' '\n' ' <div class="page-content">\n' '\n' ' <div class="container">\n' '\n' ' <!-- Start of Shop Banner -->\n' '\n' ' <div class="shop-default-banner banner d-flex ' 'align-items-center mb-5 br-xs"\n' '\n' ' style="background-image: url(', '/static/assets/images/1400X520_1.jpg', '); background-color: #FFC74E;">\n' '\n' ' <div class="banner-content">\n' '\n' ' <h4 class="banner-subtitle font-weight-bold">#1 ' 'Safety Equipment Trader</h4>\n' '\n' ' <h3 class="banner-title text-white ' 'text-uppercase font-weight-bolder ls-normal">World Class Brands</h3>\n' '\n' ' <a href="', '/about-us/', '" class="btn btn-dark btn-rounded btn-icon-right">Since 40+ years<i ' 'class="w-icon-long-arrow-right"></i></a>\n' '\n' ' </div>\n' '\n' ' </div>\n' '\n' ' <!-- End of Shop Banner -->\n' '\n' '\n' '\n' ' \n' '\n' ' <!-- End of Shop Brands-->\n' '\n' '\n' '\n' ' <!-- Start of Shop Category -->\n' '\n' ' \n' '\n' ' <!-- End of Shop Category -->\n' '\n' '\n' '\n' ' <!-- Start of Shop Content -->\n' '\n' ' <div class="shop-content row gutter-lg mb-10">\n' '\n' ' <!-- Start of Sidebar, Shop Sidebar -->\n' '\n' ' <aside class="sidebar shop-sidebar ' 'sticky-sidebar-wrapper sidebar-fixed">\n' '\n' ' <!-- Start of Sidebar Overlay -->\n' '\n' ' <div class="sidebar-overlay"></div>\n' '\n' ' <a class="sidebar-close" href="#"><i ' 'class="close-icon"></i></a>\n' '\n' '\n' '\n' ' <!-- Start of Sidebar Content -->\n' ' <!-- Start of Sidebar Content -->\n' ' <!-- Start of Sidebar Content -->\n' ' <div class="sidebar-content scrollable">\n' ' <!-- Start of Sticky Sidebar -->\n' ' <div class="sticky-sidebar ' 'sticky-sidebar-fixed">\n' ' <div class="filter-actions">\n' ' <label>Filter :</label>\n' ' <a href="#" class="btn btn-dark ' 'btn-link filter-clean">Clean All</a>\n' ' </div>\n' ' <!-- Start of Collapsible widget -->\n' ' <!-- Category Filter -->\n' ' <div class="filter-group widget">\n' ' <h3 class="widget-title ' 'collapsed"><span>Select Categories</span></h3>\n' ' <select name="catbro" id="catbro" ' 'class="form-control">\n' ' <option value="">All ' 'Categories</option>\n' ' ', '\n' ' <option value="203">Personal ' 'Protective Equipment</option>\n' ' … <trimmed 212224 bytes string> |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
node | <IfNode> |
self | [<TextNode: '\n\n\n\n <!-- Start of Main '>, <django.template.defaulttags.URLNode object at 0x7f8a01819df0>, <TextNode: '">Home</a></li>\n\n '>, <django.template.defaulttags.URLNode object at 0x7f8a01819b20>, <TextNode: '">Categories</a></li>\n\n '>, <django.templatetags.static.StaticNode object at 0x7f8a01819b50>, <TextNode: '); background-color: #FFC'>, <django.template.defaulttags.URLNode object at 0x7f8a01819c40>, <TextNode: '" class="btn btn-dark btn'>, <ForNode: for category in parent_category, tail_len: 5>, <TextNode: '\n '>, <ForNode: for child in category.get_children, tail_len: 5>, <TextNode: '\n '>, <ForNode: for brands in brands, tail_len: 7>, <TextNode: '\n '>, <ForNode: for product in products|dictsort:"priority", tail_len: 43>, <TextNode: ' \n\n\n\n '>, <Variable Node: products.start_index>, <TextNode: '-'>, <Variable Node: products.end_index>, <TextNode: ' of '>, <Variable Node: products.paginator.count>, <TextNode: '</span> Products\n '>, <IfNode>, <TextNode: '\n </div>\n\n'>] |
/home/al-bahri.com/public_html/lib/python3.8/site-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}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
self | <IfNode> |
/home/al-bahri.com/public_html/lib/python3.8/site-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 0x7f8a017aff10>) |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
match | True |
nodelist | [<TextNode: '\n <ul '>, <IfNode>, <TextNode: '\n '>, <ForNode: for i in page_range, tail_len: 3>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </ul'>] |
self | <IfNode> |
/home/al-bahri.com/public_html/lib/python3.8/site-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 <ul class="pagination">\n ', '\n' ' <li class="prev disabled">\n' ' <a href="?page=1" aria-label="Previous" ' 'tabindex="-1" aria-disabled="true">\n' ' <i class="w-icon-long-arrow-left"></i>Prev\n' ' </a>\n' ' </li>\n' ' ', '\n '] |
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
node | <ForNode: for i in page_range, tail_len: 3> |
self | [<TextNode: '\n <ul '>, <IfNode>, <TextNode: '\n '>, <ForNode: for i in page_range, tail_len: 3>, <TextNode: '\n '>, <IfNode>, <TextNode: '\n </ul'>] |
/home/al-bahri.com/public_html/lib/python3.8/site-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}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
self | <ForNode: for i in page_range, tail_len: 3> |
/home/al-bahri.com/public_html/lib/python3.8/site-packages/django/template/defaulttags.py
, line 167, in render
else:
parentloop = {}
with context.push():
values = self.sequence.resolve(context, ignore_failures=True)
if values is None:
values = []
if not hasattr(values, '__len__'):
values = list(values)…
len_values = len(values)
if len_values < 1:
return self.nodelist_empty.render(context)
nodelist = []
if self.is_reversed:
values = reversed(values)
Variable | Value |
---|---|
context | [{'True': True, 'False': False, 'None': None}, {}, {}, {'categories': <QuerySet [<Categories: Coverall & 2 PC Suits>, <Categories: Immersion Suit>, <Categories: Life Jacket>, <Categories: Light Life Jacket TVs>, <Categories: Heavy Duty Life Jacket>, <Categories: Inflatable Life Jacket>, <Categories: Light for Life Jacket>, <Categories: Lifebuoy/Life Tube>, <Categories: Fire Box>, <Categories: Plastic Chains>, <Categories: Clamps & Clips>, <Categories: Air Hose (Rubber Air Hoses)>, <Categories: Corrugated Hose>, <Categories: Hydraulic Hose>, <Categories: Lay Flat Hose>, <Categories: Reinforced Hose>, <Categories: Sand Blast Hose>, <Categories: Suction Hose>, <Categories: Welding Hose>, <Categories: Corner Protectors>, '...(remaining elements truncated)...']>, 'category': <Categories: General Hardware Items>, 'products': <Page 2 of 2>, 'brands': <QuerySet [<Brands: Blue Eagle>, <Brands: Huck>, <Brands: OETiker>, <Brands: FARES>, <Brands: BATEX>, <Brands: IKAR>, <Brands: Manager's>, <Brands: Plus>, <Brands: WeldOne>, <Brands: Gaston Mille>, <Brands: Goliath>, <Brands: Cristin>, <Brands: STEIF>, <Brands: SPERIAN>, <Brands: North>, <Brands: CASTONG>, <Brands: LINEPRO>, <Brands: Speakman>, <Brands: CIDAT>, <Brands: HAWK>, '...(remaining elements truncated)...']>, 'parent_category': <QuerySet [<Categories: Personal Protective Equipment>, <Categories: Marine Safety>, <Categories: Road Safety and Parking Safety>, <Categories: Hoses & Clamps>, <Categories: Painting Tools>, <Categories: Emergency Equipments>, <Categories: General Hardware Items>, <Categories: Lifting and Securing>, <Categories: Cleaning Wipes and Tissues>, <Categories: Uncategorized>]>, 'page_range': <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0>, 'paginator': <django.core.paginator.Paginator object at 0x7f8a018c6700>, 'is_paginated': True, 'meta_data': {'meta_title': 'Al Bahri Hardware and Safety Equipment LLC -Biggest and Renowned Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah)', 'meta_description': 'Al Bahri Hardware and Safety Equipment LLC is one of the oldest, biggest and renowned safety equipment suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah) serving millions of customers since 40+ years.', 'meta_keywords': 'Al Bahri Hardware, Al Bahri Hardware and Safety Equipments, Top Safety Equipments Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Suppliers in UAE(Abu Dhabi, Dubai, Sharjah, Ajman, Umm Al Quwain, Ras Al Khaimah and Fujairah), Top Safety Equipment Supplier in UAE(Abu Dhabi, Dubai, Sharjah, Ajman,Umm Al Quwain,Ras Al Kha', 'og_image': 'https://al-bahri.com/media/res/Al_Bahri_Hardware_OG_Image-min_9m54yyn.jpg', 'og_url': 'https://al-bahri.com/products/category/general-hardware-items/?page=5', 'og_type': 'website'}}] |
parentloop | {} |
self | <ForNode: for i in page_range, tail_len: 3> |
values | <generator object Paginator.get_elided_page_range at 0x7f8a018b9ac0> |
/home/al-bahri.com/public_html/lib/python3.8/site-packages/django/core/paginator.py
, line 145, in get_elided_page_range
If the page range is larger than a given size, the whole range is not
provided and a compact form is returned instead, e.g. for a paginator
with 50 pages, if page 43 were the current page, the output, with the
default arguments, would be:
1, 2, …, 40, 41, 42, 43, 44, 45, 46, …, 49, 50.
"""
number = self.validate_number(number)…
if self.num_pages <= (on_each_side + on_ends) * 2:
yield from self.page_range
return
if number > (1 + on_each_side + on_ends) + 1:
Variable | Value |
---|---|
number | '5' |
on_each_side | 3 |
on_ends | 2 |
self | <django.core.paginator.Paginator object at 0x7f8a018c6700> |
/home/al-bahri.com/public_html/lib/python3.8/site-packages/django/core/paginator.py
, line 58, in validate_number
raise PageNotAnInteger(_('That page number is not an integer'))
if number < 1:
raise EmptyPage(_('That page number is less than 1'))
if number > self.num_pages:
if number == 1 and self.allow_empty_first_page:
pass
else:
raise EmptyPage(_('That page contains no results'))…
return number
def get_page(self, number):
"""
Return a valid page, even if the page argument isn't a number or isn't
in range.
Variable | Value |
---|---|
number | 5 |
self | <django.core.paginator.Paginator object at 0x7f8a018c6700> |
AnonymousUser
Variable | Value |
---|---|
page | '5' |
No POST data
No FILES data
No cookie data
Variable | Value |
---|---|
HTTPS | 'on' |
HTTP_ACCEPT | '*/*' |
HTTP_ACCEPT_ENCODING | 'gzip, br' |
HTTP_CDN_LOOP | 'cloudflare' |
HTTP_CF_CONNECTING_IP | '44.221.43.88' |
HTTP_CF_IPCOUNTRY | 'US' |
HTTP_CF_RAY | '86b7e0e789cb2424-IAD' |
HTTP_CF_VISITOR | '{"scheme":"https"}' |
HTTP_HOST | 'al-bahri.com' |
HTTP_USER_AGENT | 'claudebot' |
HTTP_X_FORWARDED_FOR | '44.221.43.88' |
HTTP_X_FORWARDED_PROTO | 'https' |
LSWS_EDITION | 'Openlitespeed 1.7.16' |
PATH_INFO | '/products/category/general-hardware-items/' |
QUERY_STRING | 'page=5' |
REMOTE_ADDR | '172.71.223.11' |
REMOTE_PORT | '57828' |
REQUEST_METHOD | 'GET' |
REQUEST_URI | '/products/category/general-hardware-items/?page=5' |
SCRIPT_NAME | '' |
SERVER_ADDR | '97.74.87.56' |
SERVER_ADMIN | '[email protected]' |
SERVER_NAME | 'al-bahri.com' |
SERVER_PORT | '443' |
SERVER_PROTOCOL | 'HTTP/1.1' |
SERVER_SOFTWARE | 'LiteSpeed' |
SSL_CIPHER | 'TLS_AES_128_GCM_SHA256' |
SSL_CIPHER_ALGKEYSIZE | '********************' |
SSL_CIPHER_USEKEYSIZE | '********************' |
SSL_PROTOCOL | 'TLSv1.3' |
X-LSCACHE | 'on,crawler' |
X_SPDY | 'HTTP2' |
wsgi.errors | <_io.TextIOWrapper name='<stderr>' mode='w' encoding='ascii'> |
wsgi.file_wrapper | <class 'lsapi_wsgi.FileWrapper'> |
wsgi.input | <lsapi_wsgi.InputStream object at 0x7f8a019af970> |
wsgi.multiprocess | True |
wsgi.multithread | False |
wsgi.run_once | False |
wsgi.url_scheme | 'https' |
wsgi.version | (1, 0) |
bahri.settings
Setting | Value |
---|---|
ABSOLUTE_URL_OVERRIDES | {} |
ADMINS | [] |
ADMIN_SITE_HEADER | 'Al-Bahri Administration' |
ADMIN_SITE_TITLE | 'Al-Bahri Administration' |
ALLOWED_HOSTS | ['*'] |
APPEND_SLASH | True |
AUTHENTICATION_BACKENDS | ['django.contrib.auth.backends.ModelBackend'] |
AUTH_PASSWORD_VALIDATORS | '********************' |
AUTH_USER_MODEL | 'auth.User' |
BASE_DIR | PosixPath('/home/al-bahri.com/public_html/bahri') |
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('/home/al-bahri.com/public_html/bahri/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_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 | ['captcha', 'cities_light', 'embed_video', 'mptt', 'tinymce', 'ckeditor', 'debug_toolbar', 'blog.apps.BlogConfig', 'log.apps.LogConfig', 'job.apps.JobConfig', 'ecommerce.apps.EcommerceConfig', 'django_social_share', 'siteinfo.apps.SiteinfoConfig', 'main.apps.MainConfig', 'subscribers.apps.SubscribersConfig', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'django.contrib.sites', 'django.contrib.redirects'] |
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 | '/admin/' |
LOGIN_URL | '/accounts/login/' |
LOGOUT_REDIRECT_URL | None |
MANAGERS | [] |
MEDIA_ROOT | PosixPath('/home/al-bahri.com/public_html/bahri/public/media') |
MEDIA_URL | '/media/' |
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', 'django.contrib.redirects.middleware.RedirectFallbackMiddleware'] |
MIGRATION_MODULES | {} |
MONTH_DAY_FORMAT | 'F j' |
NUMBER_GROUPING | 0 |
PASSWORD_HASHERS | '********************' |
PASSWORD_RESET_TIMEOUT | '********************' |
PASSWORD_RESET_TIMEOUT_DAYS | '********************' |
PREPEND_WWW | False |
RECAPTCHA_PRIVATE_KEY | '********************' |
RECAPTCHA_PUBLIC_KEY | '********************' |
ROOT_URLCONF | 'bahri.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 | 'bahri.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 |
STATICFILES_DIRS | [] |
STATICFILES_FINDERS | ['django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder'] |
STATICFILES_STORAGE | 'django.contrib.staticfiles.storage.StaticFilesStorage' |
STATIC_ROOT | PosixPath('/home/al-bahri.com/public_html/bahri/public/static') |
STATIC_URL | '/static/' |
TEMPLATES | [{'APP_DIRS': True, 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [PosixPath('/home/al-bahri.com/public_html/bahri/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']}}] |
TEMPLATE_CONTEXT_PROCESSORS | ('module.context_processors.site',) |
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 | 'bahri.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.