Reputation:
I'm working on Django and I want to change the heading of the filter section which is marked in the pic:
And my admin file looks like this :
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from .models import CustomUser
class CustomUserAdmin(UserAdmin):
change_form_template = 'change_form.html'
add_form_template='add_form.html'
list_display = ('first_name','last_name','email','is_staff', 'is_active',)
list_filter = ('first_name','email', 'is_staff', 'is_active',)
search_fields = ('email','first_name','last_name','a1','a2','city','state','pincode')
ordering = ('first_name',)
add_fieldsets = (
('Personal Information', {
# To create a section with name 'Personal Information' with mentioned fields
'description': "",
'classes': ('wide',), # To make char fields and text fields of a specific size
'fields': (('first_name','last_name'),'email','a1','a2','city','state','pincode','check',
'password1', 'password2',)}
),
('Permissions',{
'description': "",
'classes': ('wide', 'collapse'),
'fields':( 'is_staff', 'is_active','date_joined')}),
)
So can we change the heading of the filter section without changing any thing else??
Thanks in advance!!
Upvotes: 1
Views: 253
Reputation: 2800
To do this first add this line to your admin file :
change_list_template='change_list_form.html'
So your admin.py file is :
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from .models import CustomUser
class CustomUserAdmin(UserAdmin):
change_list_template='change_list_form.html'
change_form_template = 'change_form.html'
add_form_template='add_form.html'
list_display = ('first_name','last_name','email','is_staff', 'is_active',)
list_filter = ('first_name','email', 'is_staff', 'is_active',)
search_fields = ('email','first_name','last_name','a1','a2','city','state','pincode')
ordering = ('first_name',)
add_fieldsets = (
('Personal Information', {
# To create a section with name 'Personal Information' with mentioned fields
'description': "",
'classes': ('wide',), # To make char fields and text fields of a specific size
'fields': (('first_name','last_name'),'email','a1','a2','city','state','pincode','check',
'password1', 'password2',)}
),
('Permissions',{
'description': "",
'classes': ('wide', 'collapse'),
'fields':( 'is_staff', 'is_active','date_joined')}),
)
After that create a file in the templates folder with name : change_list_form.html
and add the following code to that file :
{% extends "admin/change_list.html" %}
{% load i18n admin_urls static admin_list %}
{% block filters %}
{% if cl.has_filters %}
<h2>Write here your new heading</h2>
{% if cl.preserved_filters %}<h3 id="changelist-filter-clear">
<a href="?{% if cl.is_popup %}_popup=1{% endif %}">✖ {% trans "Clear all filters" %}</a>
</h3>
{% endif %}
{% for spec in cl.filter_specs %}{% admin_list_filter cl spec %}{% endfor %}
{% endif %}
{% endblock %}
I hope it help you.
Upvotes: 2