import django_tables2 as tables from utilities.tables import BaseTable, TagColumn, ToggleColumn from .models import Tenant, TenantGroup MPTT_LINK = """ {% if record.get_children %} {% else %} {% endif %} {{ record.name }} """ TENANTGROUP_ACTIONS = """ {% if perms.tenancy.change_tenantgroup %} {% endif %} """ COL_TENANT = """ {% if record.tenant %} {{ record.tenant }} {% else %} — {% endif %} """ # # Tenant groups # class TenantGroupTable(BaseTable): pk = ToggleColumn() name = tables.TemplateColumn( template_code=MPTT_LINK, orderable=False ) tenant_count = tables.Column( verbose_name='Tenants' ) actions = tables.TemplateColumn( template_code=TENANTGROUP_ACTIONS, attrs={'td': {'class': 'text-right noprint'}}, verbose_name='' ) class Meta(BaseTable.Meta): model = TenantGroup fields = ('pk', 'name', 'tenant_count', 'description', 'slug', 'actions') default_columns = ('pk', 'name', 'tenant_count', 'description', 'actions') # # Tenants # class TenantTable(BaseTable): pk = ToggleColumn() name = tables.LinkColumn() tags = TagColumn( url_name='tenancy:tenant_list' ) class Meta(BaseTable.Meta): model = Tenant fields = ('pk', 'name', 'slug', 'group', 'description', 'tags') default_columns = ('pk', 'name', 'group', 'description')