Closed tiagoavsilva closed 3 years ago
django-webpush is shipped with built in jinja support. If you would like to use with jinja backend, pass pipeline.jinja2.PipelineExtension to your jinja environment. Like following:
{ "BACKEND": "django_jinja.backend.Jinja2", "OPTIONS": { 'extensions': ['webpush.jinja2.WebPushExtension'], } },
Adding this code to my settings.py I'm getting the following error:
File "...\venv\lib\site-packages\django_jinja\backend.py", line 193, in __init__
self.env.install_gettext_translations (translation, newstyle = newstyle_gettext)
AttributeError: 'Environment' object has no 'install_gettext_translations' attribute
@tiagoavsilva Seems like you need to add the default extensions like it is mentioned in the django-jinja
documentation.
So it will be
from django_jinja.builtins import DEFAULT_EXTENSIONS
"OPTIONS": {
"extensions": DEFAULT_EXTENSIONS + [
'webpush.jinja2.WebPushExtension'
]
}
@tiagoavsilva I have fixed the documentation of this project as well. I think it is more explicit now.
@safwanrahman I solved the problem using Django's Templating. But for that I needed to add the 'builtins' with webpush in default TEMPLATES:
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'APP_DIRS': True,
'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',
],
'builtins': [
'webpush.templatetags.webpush_notifications',
],
},
},
]
It might be interesting to add this to the documentation as well.
I'm trying to integrate webpush into my Django project following README.md but I'm having problems. In the description it says
'django-webpush is shipped with built in jinja support'
. Do I need to make any changes in my project to enable 'built in jinja support'?When I include {% webpush_header %} in my template I'm getting the following error:
Invalid block tag on line 12: 'webpush_header'. Did you forget to register or load this tag?
Could someone tell me what I'm doing wrong?