13150 internationalize tables

This commit is contained in:
Arthur 2023-07-26 12:26:12 +07:00
parent 341a86a4e1
commit f04e55743b
5 changed files with 113 additions and 34 deletions

View File

@ -56,6 +56,7 @@ class UserTokenTable(NetBoxTable):
template_code=ALLOWED_IPS template_code=ALLOWED_IPS
) )
actions = TokenActionsColumn( actions = TokenActionsColumn(
verbose_name=_('Actions'),
actions=('edit', 'delete'), actions=('edit', 'delete'),
extra_buttons=COPY_BUTTON extra_buttons=COPY_BUTTON
) )
@ -85,15 +86,24 @@ class TokenTable(UserTokenTable):
class UserTable(NetBoxTable): class UserTable(NetBoxTable):
username = tables.Column( username = tables.Column(
verbose_name=_('Username'),
linkify=True linkify=True
) )
groups = columns.ManyToManyColumn( groups = columns.ManyToManyColumn(
verbose_name=_('Groups'),
linkify_item=('users:netboxgroup', {'pk': tables.A('pk')}) linkify_item=('users:netboxgroup', {'pk': tables.A('pk')})
) )
is_active = columns.BooleanColumn() is_active = columns.BooleanColumn(
is_staff = columns.BooleanColumn() verbose_name=_('Is active'),
is_superuser = columns.BooleanColumn() )
is_staff = columns.BooleanColumn(
verbose_name=_('Is staff'),
)
is_superuser = columns.BooleanColumn(
verbose_name=_('Is superuser'),
)
actions = columns.ActionsColumn( actions = columns.ActionsColumn(
verbose_name=_('Actions'),
actions=('edit', 'delete'), actions=('edit', 'delete'),
) )
@ -107,8 +117,12 @@ class UserTable(NetBoxTable):
class GroupTable(NetBoxTable): class GroupTable(NetBoxTable):
name = tables.Column(linkify=True) name = tables.Column(
verbose_name=_('Name'),
linkify=True
)
actions = columns.ActionsColumn( actions = columns.ActionsColumn(
verbose_name=_('Actions'),
actions=('edit', 'delete'), actions=('edit', 'delete'),
) )
@ -121,23 +135,42 @@ class GroupTable(NetBoxTable):
class ObjectPermissionTable(NetBoxTable): class ObjectPermissionTable(NetBoxTable):
name = tables.Column(linkify=True) name = tables.Column(
object_types = columns.ContentTypesColumn() verbose_name=_('Name'),
enabled = columns.BooleanColumn() linkify=True
can_view = columns.BooleanColumn() )
can_add = columns.BooleanColumn() object_types = columns.ContentTypesColumn(
can_change = columns.BooleanColumn() verbose_name=_('Object types'),
can_delete = columns.BooleanColumn() )
enabled = columns.BooleanColumn(
verbose_name=_('Enabled'),
)
can_view = columns.BooleanColumn(
verbose_name=_('Can view'),
)
can_add = columns.BooleanColumn(
verbose_name=_('Can add'),
)
can_change = columns.BooleanColumn(
verbose_name=_('Can change'),
)
can_delete = columns.BooleanColumn(
verbose_name=_('Can delete'),
)
custom_actions = columns.ArrayColumn( custom_actions = columns.ArrayColumn(
verbose_name=_('Custom actions'),
accessor=tables.A('actions') accessor=tables.A('actions')
) )
users = columns.ManyToManyColumn( users = columns.ManyToManyColumn(
verbose_name=_('Users'),
linkify_item=('users:netboxuser', {'pk': tables.A('pk')}) linkify_item=('users:netboxuser', {'pk': tables.A('pk')})
) )
groups = columns.ManyToManyColumn( groups = columns.ManyToManyColumn(
verbose_name=_('Groups'),
linkify_item=('users:netboxgroup', {'pk': tables.A('pk')}) linkify_item=('users:netboxgroup', {'pk': tables.A('pk')})
) )
actions = columns.ActionsColumn( actions = columns.ActionsColumn(
verbose_name=_('Actions'),
actions=('edit', 'delete'), actions=('edit', 'delete'),
) )

View File

@ -1,3 +1,4 @@
from django.utils.translation import gettext_lazy as _
import django_tables2 as tables import django_tables2 as tables
from tenancy.tables import ContactsColumnMixin, TenancyColumnsMixin from tenancy.tables import ContactsColumnMixin, TenancyColumnsMixin
from virtualization.models import Cluster, ClusterGroup, ClusterType from virtualization.models import Cluster, ClusterGroup, ClusterType
@ -13,12 +14,13 @@ __all__ = (
class ClusterTypeTable(NetBoxTable): class ClusterTypeTable(NetBoxTable):
name = tables.Column( name = tables.Column(
verbose_name=_('Name'),
linkify=True linkify=True
) )
cluster_count = columns.LinkedCountColumn( cluster_count = columns.LinkedCountColumn(
viewname='virtualization:cluster_list', viewname='virtualization:cluster_list',
url_params={'type_id': 'pk'}, url_params={'type_id': 'pk'},
verbose_name='Clusters' verbose_name=_('Clusters')
) )
tags = columns.TagColumn( tags = columns.TagColumn(
url_name='virtualization:clustertype_list' url_name='virtualization:clustertype_list'
@ -34,12 +36,13 @@ class ClusterTypeTable(NetBoxTable):
class ClusterGroupTable(ContactsColumnMixin, NetBoxTable): class ClusterGroupTable(ContactsColumnMixin, NetBoxTable):
name = tables.Column( name = tables.Column(
verbose_name=_('Name'),
linkify=True linkify=True
) )
cluster_count = columns.LinkedCountColumn( cluster_count = columns.LinkedCountColumn(
viewname='virtualization:cluster_list', viewname='virtualization:cluster_list',
url_params={'group_id': 'pk'}, url_params={'group_id': 'pk'},
verbose_name='Clusters' verbose_name=_('Clusters')
) )
tags = columns.TagColumn( tags = columns.TagColumn(
url_name='virtualization:clustergroup_list' url_name='virtualization:clustergroup_list'
@ -56,29 +59,37 @@ class ClusterGroupTable(ContactsColumnMixin, NetBoxTable):
class ClusterTable(TenancyColumnsMixin, ContactsColumnMixin, NetBoxTable): class ClusterTable(TenancyColumnsMixin, ContactsColumnMixin, NetBoxTable):
name = tables.Column( name = tables.Column(
verbose_name=_('Name'),
linkify=True linkify=True
) )
type = tables.Column( type = tables.Column(
verbose_name=_('Type'),
linkify=True linkify=True
) )
group = tables.Column( group = tables.Column(
verbose_name=_('Group'),
linkify=True linkify=True
) )
status = columns.ChoiceFieldColumn() status = columns.ChoiceFieldColumn(
verbose_name=_('Status'),
)
site = tables.Column( site = tables.Column(
verbose_name=_('Site'),
linkify=True linkify=True
) )
device_count = columns.LinkedCountColumn( device_count = columns.LinkedCountColumn(
viewname='dcim:device_list', viewname='dcim:device_list',
url_params={'cluster_id': 'pk'}, url_params={'cluster_id': 'pk'},
verbose_name='Devices' verbose_name=_('Devices')
) )
vm_count = columns.LinkedCountColumn( vm_count = columns.LinkedCountColumn(
viewname='virtualization:virtualmachine_list', viewname='virtualization:virtualmachine_list',
url_params={'cluster_id': 'pk'}, url_params={'cluster_id': 'pk'},
verbose_name='VMs' verbose_name=_('VMs')
)
comments = columns.MarkdownColumn(
verbose_name=_('Comments'),
) )
comments = columns.MarkdownColumn()
tags = columns.TagColumn( tags = columns.TagColumn(
url_name='virtualization:cluster_list' url_name='virtualization:cluster_list'
) )

View File

@ -1,5 +1,5 @@
import django_tables2 as tables import django_tables2 as tables
from django.utils.translation import gettext as _ from django.utils.translation import gettext_lazy as _
from dcim.tables.devices import BaseInterfaceTable from dcim.tables.devices import BaseInterfaceTable
from netbox.tables import NetBoxTable, columns from netbox.tables import NetBoxTable, columns
@ -12,7 +12,7 @@ __all__ = (
'VMInterfaceTable', 'VMInterfaceTable',
) )
VMINTERFACE_BUTTONS = """ VMINTERFACE_BUTTONS = _("""
{% if perms.virtualization.change_vminterface %} {% if perms.virtualization.change_vminterface %}
<span class="dropdown"> <span class="dropdown">
<button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false" title="Add"> <button type="button" class="btn btn-primary btn-sm dropdown-toggle" data-bs-toggle="dropdown" aria-haspopup="true" aria-expanded="false" title="Add">
@ -31,7 +31,7 @@ VMINTERFACE_BUTTONS = """
</ul> </ul>
</span> </span>
{% endif %} {% endif %}
""" """)
# #
@ -40,33 +40,43 @@ VMINTERFACE_BUTTONS = """
class VirtualMachineTable(TenancyColumnsMixin, ContactsColumnMixin, NetBoxTable): class VirtualMachineTable(TenancyColumnsMixin, ContactsColumnMixin, NetBoxTable):
name = tables.Column( name = tables.Column(
verbose_name=_('Name'),
order_by=('_name',), order_by=('_name',),
linkify=True linkify=True
) )
status = columns.ChoiceFieldColumn() status = columns.ChoiceFieldColumn(
verbose_name=_('Status'),
)
site = tables.Column( site = tables.Column(
verbose_name=_('Site'),
linkify=True linkify=True
) )
cluster = tables.Column( cluster = tables.Column(
verbose_name=_('Cluster'),
linkify=True linkify=True
) )
device = tables.Column( device = tables.Column(
verbose_name=_('Device'),
linkify=True linkify=True
) )
role = columns.ColoredLabelColumn() role = columns.ColoredLabelColumn(
comments = columns.MarkdownColumn() verbose_name=_('Role'),
)
comments = columns.MarkdownColumn(
verbose_name=_('Comments'),
)
primary_ip4 = tables.Column( primary_ip4 = tables.Column(
linkify=True, linkify=True,
verbose_name='IPv4 Address' verbose_name=_('IPv4 Address')
) )
primary_ip6 = tables.Column( primary_ip6 = tables.Column(
linkify=True, linkify=True,
verbose_name='IPv6 Address' verbose_name=_('IPv6 Address')
) )
primary_ip = tables.Column( primary_ip = tables.Column(
linkify=True, linkify=True,
order_by=('primary_ip4', 'primary_ip6'), order_by=('primary_ip4', 'primary_ip6'),
verbose_name='IP Address' verbose_name=_('IP Address')
) )
tags = columns.TagColumn( tags = columns.TagColumn(
url_name='virtualization:virtualmachine_list' url_name='virtualization:virtualmachine_list'
@ -93,12 +103,15 @@ class VirtualMachineTable(TenancyColumnsMixin, ContactsColumnMixin, NetBoxTable)
class VMInterfaceTable(BaseInterfaceTable): class VMInterfaceTable(BaseInterfaceTable):
virtual_machine = tables.Column( virtual_machine = tables.Column(
verbose_name=_('Virtual machine'),
linkify=True linkify=True
) )
name = tables.Column( name = tables.Column(
verbose_name=_('Name'),
linkify=True linkify=True
) )
vrf = tables.Column( vrf = tables.Column(
verbose_name=_('VRF'),
linkify=True linkify=True
) )
tags = columns.TagColumn( tags = columns.TagColumn(
@ -116,12 +129,15 @@ class VMInterfaceTable(BaseInterfaceTable):
class VirtualMachineVMInterfaceTable(VMInterfaceTable): class VirtualMachineVMInterfaceTable(VMInterfaceTable):
parent = tables.Column( parent = tables.Column(
verbose_name=_('Parent'),
linkify=True linkify=True
) )
bridge = tables.Column( bridge = tables.Column(
verbose_name=_('Bridge'),
linkify=True linkify=True
) )
actions = columns.ActionsColumn( actions = columns.ActionsColumn(
verbose_name=_('Actions'),
actions=('edit', 'delete'), actions=('edit', 'delete'),
extra_buttons=VMINTERFACE_BUTTONS extra_buttons=VMINTERFACE_BUTTONS
) )

View File

@ -1,3 +1,4 @@
from django.utils.translation import gettext_lazy as _
import django_tables2 as tables import django_tables2 as tables
from dcim.models import Interface from dcim.models import Interface
@ -14,14 +15,17 @@ __all__ = (
class WirelessLANGroupTable(NetBoxTable): class WirelessLANGroupTable(NetBoxTable):
name = columns.MPTTColumn( name = columns.MPTTColumn(
verbose_name=_('Name'),
linkify=True linkify=True
) )
wirelesslan_count = columns.LinkedCountColumn( wirelesslan_count = columns.LinkedCountColumn(
viewname='wireless:wirelesslan_list', viewname='wireless:wirelesslan_list',
url_params={'group_id': 'pk'}, url_params={'group_id': 'pk'},
verbose_name='Wireless LANs' verbose_name=_('Wireless LANs')
)
comments = columns.MarkdownColumn(
verbose_name=_('Comments'),
) )
comments = columns.MarkdownColumn()
tags = columns.TagColumn( tags = columns.TagColumn(
url_name='wireless:wirelesslangroup_list' url_name='wireless:wirelesslangroup_list'
) )
@ -37,16 +41,22 @@ class WirelessLANGroupTable(NetBoxTable):
class WirelessLANTable(TenancyColumnsMixin, NetBoxTable): class WirelessLANTable(TenancyColumnsMixin, NetBoxTable):
ssid = tables.Column( ssid = tables.Column(
verbose_name=_('SSID'),
linkify=True linkify=True
) )
group = tables.Column( group = tables.Column(
verbose_name=_('Group'),
linkify=True linkify=True
) )
status = columns.ChoiceFieldColumn() status = columns.ChoiceFieldColumn(
interface_count = tables.Column( verbose_name=_('Status'),
verbose_name='Interfaces' )
interface_count = tables.Column(
verbose_name=_('Interfaces')
)
comments = columns.MarkdownColumn(
verbose_name=_('Comments'),
) )
comments = columns.MarkdownColumn()
tags = columns.TagColumn( tags = columns.TagColumn(
url_name='wireless:wirelesslan_list' url_name='wireless:wirelesslan_list'
) )
@ -62,9 +72,11 @@ class WirelessLANTable(TenancyColumnsMixin, NetBoxTable):
class WirelessLANInterfacesTable(NetBoxTable): class WirelessLANInterfacesTable(NetBoxTable):
device = tables.Column( device = tables.Column(
verbose_name=_('Device'),
linkify=True linkify=True
) )
name = tables.Column( name = tables.Column(
verbose_name=_('Name'),
linkify=True linkify=True
) )

View File

@ -1,3 +1,4 @@
from django.utils.translation import gettext_lazy as _
import django_tables2 as tables import django_tables2 as tables
from netbox.tables import NetBoxTable, columns from netbox.tables import NetBoxTable, columns
@ -12,21 +13,27 @@ __all__ = (
class WirelessLinkTable(TenancyColumnsMixin, NetBoxTable): class WirelessLinkTable(TenancyColumnsMixin, NetBoxTable):
id = tables.Column( id = tables.Column(
linkify=True, linkify=True,
verbose_name='ID' verbose_name=_('ID')
)
status = columns.ChoiceFieldColumn(
verbose_name=_('Status'),
) )
status = columns.ChoiceFieldColumn()
device_a = tables.Column( device_a = tables.Column(
verbose_name=_('Device a'),
accessor=tables.A('interface_a__device'), accessor=tables.A('interface_a__device'),
linkify=True linkify=True
) )
interface_a = tables.Column( interface_a = tables.Column(
verbose_name=_('Interface a'),
linkify=True linkify=True
) )
device_b = tables.Column( device_b = tables.Column(
verbose_name=_('Device b'),
accessor=tables.A('interface_b__device'), accessor=tables.A('interface_b__device'),
linkify=True linkify=True
) )
interface_b = tables.Column( interface_b = tables.Column(
verbose_name=_('Interface b'),
linkify=True linkify=True
) )
tags = columns.TagColumn( tags = columns.TagColumn(