#23535: A bit vague instructions about modifying templates in tutorial 2
--------------------------------------+---------------------------------
Reporter: velis74 | Owner: nobody
Type: Cleanup/optimization | Status: new
Component: Documentation | Version: 1.7
Severity: Normal | Keywords: tutorial, templates
Triage Stage: Unreviewed | Has patch: 0
Easy pickings: 1 | UI/UX: 0
--------------------------------------+---------------------------------
I'm running through tutorials @ django sprint PyConUK and I just had a bit
of a problem with the section "Customize the admin look and feel"
(https://docs.djangoproject.com/en/1.7/intro/tutorial02/).
In the tutorial, it says: "Then, just edit the file and replace ''{{
site_header }}'' with your own site’s name as you see fit."
There are two issues with this:
1. the tag in base_site.html itself is actually ''{{
site_header|default:_('Django administration') }}''
2. changing the default part (''default:_('Django administration')'')
doesn't work since the ''site_header'' variable is actually defined.
The documentation mentions the ''site_header'' variable location in the
same paragraph, but for a new user (such as myself) it is not immediately
obvious what the entire thing means.
I would like to discuss two issues regarding this:
1. The necessity of the ''default:'' specification in the template itself
(Daniele Procida's suggestion)
2. Appropriate change in the documentation where the text would be more
specific about what to change
Argumentation for issue 1:
The ''default:'' specification may not even be necessary since the
site_header variable is declared by default and automatically works.
Setting it to ''None'' or even ''del''eting it seems like a pretty stupid
idea, so I would argue that the ''default:'' spec in the template might be
redundant. I have not tested how the framework reacts to the variable not
being defined or ''None'' though.
I propose to fix this by editing the template to remove the ''default:''
specifications both for ''site_title'' and ''site_header'' variables.
Argumentation for issue 2:
I propose to change the text of this paragraph to:
Then, just edit the file and replace ''{{ site_header }}'' tag with your
own site’s name as you see fit. Note that in the template, the tag itself
also contains a ''default'' specification for when the ''site_header''
variable wouldn't be defined. Since the variable IS defined, you have to
replace the entire tag text with your own, to e.g. ''{{_('Polls
administration') }}''
'''Note:''' We use this approach to teach you how to override templates.
In an actual project, you would probably use the
django.contrib.admin.AdminSite.site_header attribute to more easily make
this particular customization.
--
Ticket URL: <https://code.djangoproject.com/ticket/23535>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
--
You received this message because you are subscribed to the Google Groups
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/django-updates/050.f2c1f866af9f243c3e916d2105f4d77b%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.