# usergroup_tags.py
from django import template
register = template.Library()
@register.filter('name_group')
def name_group(user):
''' Retorna o nome do grupo do usuário. '''
_groups = user.groups.first()
if _groups:
return _groups.name
return ''
@register.filter('has_group')
def has_group(user, group_name):
''' Verifica se este usuário pertence a um grupo. '''
if user:
groups = user.groups.all().values_list('name', flat=True)
return True if group_name in groups else False
return False
{\% load usergroup_tags %}
{\% if request.user|has_group:"Autor" %}
É Autor.
{\% endif %}
# model_name_tags.py
from django import template
register = template.Library()
@register.simple_tag
def model_name(value):
'''
Django template filter which returns the verbose name of a model.
'''
if hasattr(value, 'model'):
value = value.model
return value._meta.verbose_name.title()
@register.simple_tag
def model_name_plural(value):
'''
Django template filter which returns the plural verbose name of a model.
'''
if hasattr(value, 'model'):
value = value.model
return value._meta.verbose_name_plural.title()
{\% load model_name_tags %}
Lista de {\% model_name_plural model %}