The openstack_dashboard.dashboards.project.databases.tables ModuleΒΆ

class openstack_dashboard.dashboards.project.databases.tables.CreateBackup(attrs=None, **kwargs)[source]

Bases: horizon.tables.actions.LinkAction

CreateBackup.allowed(request, instance=None)[source]
CreateBackup.base_options = {'__module__': 'openstack_dashboard.dashboards.project.databases.tables', '__metaclass__': <class 'horizon.tables.actions.BaseActionMetaClass'>, 'update': <function update at 0x464ec08>, 'get_link_url': <function get_link_url at 0x65940c8>, 'allowed': <function allowed at 0x6594050>, 'base_options': {'__module__': 'horizon.tables.actions', '__metaclass__': <class 'horizon.tables.actions.BaseActionMetaClass'>, 'data_type_matched': <function data_type_matched at 0x464ea28>, 'get_default_classes': <function get_default_classes at 0x464ec80>, 'update': <function update at 0x464ec08>, 'get_policy_target': <function get_policy_target at 0x464eaa0>, '_allowed': <function _allowed at 0x464eb90>, '__repr__': <function __repr__ at 0x464ed70>, 'allowed': <function allowed at 0x464eb18>, 'get_default_attrs': <function get_default_attrs at 0x464ecf8>, 'base_options': {...}, '__doc__': 'Common base class for all ``Action`` classes.', '__init__': <function __init__ at 0x464e6e0>}, '__init__': <function __init__ at 0x464eed8>, 'name': 'backup', 'url': 'horizon:project:database_backups:create', 'data_type_matched': <function data_type_matched at 0x464ea28>, 'get_default_classes': <function get_default_classes at 0x464ec80>, 'get_policy_target': <function get_policy_target at 0x464eaa0>, '_allowed': <function _allowed at 0x464eb90>, 'classes': ('ajax-modal', 'btn-camera'), '__repr__': <function __repr__ at 0x464ed70>, 'get_default_attrs': <function get_default_attrs at 0x464ecf8>, 'verbose_name': <django.utils.functional.__proxy__ object at 0x6590b50>, '__doc__': 'A table action which is simply a link rather than a form POST.\n\n .. attribute:: name\n\n Required. The short name or "slug" representing this\n action. This name should not be changed at runtime.\n\n .. attribute:: verbose_name\n\n A string which will be rendered as the link text. (Required)\n\n .. attribute:: url\n\n A string or a callable which resolves to a url to be used as the link\n target. You must either define the ``url`` attribute or override\n the ``get_link_url`` method on the class.\n\n .. attribute:: allowed_data_types\n\n A list that contains the allowed data types of the action. If the\n datum\'s type is in this list, the action will be shown on the row\n for the datum.\n\n Defaults to be an empty list (``[]``). When set to empty, the action\n will accept any kind of data.\n '}
CreateBackup.classes = ('ajax-modal', 'btn-camera')
CreateBackup.get_link_url(datam)[source]
CreateBackup.name = 'backup'
CreateBackup.url = 'horizon:project:database_backups:create'
CreateBackup.verbose_name = <django.utils.functional.__proxy__ object at 0x6590b50>
class openstack_dashboard.dashboards.project.databases.tables.DatabaseTable(request, data=None, needs_form_wrapper=None, **kwargs)[source]

Bases: horizon.tables.base.DataTable

class DatabaseTable.Meta[source]
DatabaseTable.Meta.name = 'databases'
DatabaseTable.Meta.row_actions = [<class 'openstack_dashboard.dashboards.project.databases.tables.DeleteDatabase'>]
DatabaseTable.Meta.table_actions = [<class 'openstack_dashboard.dashboards.project.databases.tables.DeleteDatabase'>]
DatabaseTable.Meta.verbose_name = <django.utils.functional.__proxy__ object at 0x6593ad0>
DatabaseTable.base_actions = {'delete': <DeleteDatabase: delete>}
DatabaseTable.base_columns = {'name': <Column: name>}
DatabaseTable.get_object_id(datum)[source]
class openstack_dashboard.dashboards.project.databases.tables.DeleteDatabase(**kwargs)[source]

Bases: horizon.tables.actions.DeleteAction

DeleteDatabase.action_past = <django.utils.functional.__proxy__ object at 0x6590910>
DeleteDatabase.action_present = <django.utils.functional.__proxy__ object at 0x6590850>
DeleteDatabase.base_options = {'__module__': 'openstack_dashboard.dashboards.project.databases.tables', '__metaclass__': <class 'horizon.tables.actions.BaseActionMetaClass'>, 'data_type_singular': <django.utils.functional.__proxy__ object at 0x6590990>, 'update': <function update at 0x49376e0>, 'get_success_url': <function get_success_url at 0x4937758>, 'get_param_name': <function get_param_name at 0x464ee60>, 'allowed': <function allowed at 0x464eb18>, 'handle': <function handle at 0x49377d0>, 'base_options': {'__module__': 'horizon.tables.actions', '__metaclass__': <class 'horizon.tables.actions.BaseActionMetaClass'>, 'data_type_matched': <function data_type_matched at 0x464ea28>, 'get_default_classes': <function get_default_classes at 0x464ec80>, 'update': <function update at 0x464ec08>, 'get_policy_target': <function get_policy_target at 0x464eaa0>, '_allowed': <function _allowed at 0x464eb90>, '__repr__': <function __repr__ at 0x464ed70>, 'allowed': <function allowed at 0x464eb18>, 'get_default_attrs': <function get_default_attrs at 0x464ecf8>, 'base_options': {...}, '__doc__': 'Common base class for all ``Action`` classes.', '__init__': <function __init__ at 0x464e6e0>}, '__init__': <function __init__ at 0x4937848>, 'name': 'delete', 'data_type_plural': <django.utils.functional.__proxy__ object at 0x6590a10>, 'action_present': <django.utils.functional.__proxy__ object at 0x6590850>, 'action_past': <django.utils.functional.__proxy__ object at 0x6590910>, 'data_type_matched': <function data_type_matched at 0x464ea28>, 'get_default_classes': <function get_default_classes at 0x49379b0>, 'get_policy_target': <function get_policy_target at 0x464eaa0>, '_allowed': <function _allowed at 0x4937578>, '_get_action_name': <function _get_action_name at 0x49375f0>, '__repr__': <function __repr__ at 0x464ed70>, 'action': <function action at 0x49378c0>, 'get_default_attrs': <function get_default_attrs at 0x464ecf8>, '__doc__': 'Doc missing.', 'delete': <function delete at 0x6589f50>}
DeleteDatabase.data_type_plural = <django.utils.functional.__proxy__ object at 0x6590a10>
DeleteDatabase.data_type_singular = <django.utils.functional.__proxy__ object at 0x6590990>
DeleteDatabase.delete(request, obj_id)[source]
DeleteDatabase.name = 'delete'
class openstack_dashboard.dashboards.project.databases.tables.DeleteUser(**kwargs)[source]

Bases: horizon.tables.actions.DeleteAction

DeleteUser.action_past = <django.utils.functional.__proxy__ object at 0x65906d0>
DeleteUser.action_present = <django.utils.functional.__proxy__ object at 0x6590610>
DeleteUser.base_options = {'__module__': 'openstack_dashboard.dashboards.project.databases.tables', '__metaclass__': <class 'horizon.tables.actions.BaseActionMetaClass'>, 'data_type_singular': <django.utils.functional.__proxy__ object at 0x6590750>, 'update': <function update at 0x49376e0>, 'get_success_url': <function get_success_url at 0x4937758>, 'get_param_name': <function get_param_name at 0x464ee60>, 'allowed': <function allowed at 0x464eb18>, 'handle': <function handle at 0x49377d0>, 'base_options': {'__module__': 'horizon.tables.actions', '__metaclass__': <class 'horizon.tables.actions.BaseActionMetaClass'>, 'data_type_matched': <function data_type_matched at 0x464ea28>, 'get_default_classes': <function get_default_classes at 0x464ec80>, 'update': <function update at 0x464ec08>, 'get_policy_target': <function get_policy_target at 0x464eaa0>, '_allowed': <function _allowed at 0x464eb90>, '__repr__': <function __repr__ at 0x464ed70>, 'allowed': <function allowed at 0x464eb18>, 'get_default_attrs': <function get_default_attrs at 0x464ecf8>, 'base_options': {...}, '__doc__': 'Common base class for all ``Action`` classes.', '__init__': <function __init__ at 0x464e6e0>}, '__init__': <function __init__ at 0x4937848>, 'name': 'delete', 'data_type_plural': <django.utils.functional.__proxy__ object at 0x65907d0>, 'action_present': <django.utils.functional.__proxy__ object at 0x6590610>, 'action_past': <django.utils.functional.__proxy__ object at 0x65906d0>, 'data_type_matched': <function data_type_matched at 0x464ea28>, 'get_default_classes': <function get_default_classes at 0x49379b0>, 'get_policy_target': <function get_policy_target at 0x464eaa0>, '_allowed': <function _allowed at 0x4937578>, '_get_action_name': <function _get_action_name at 0x49375f0>, '__repr__': <function __repr__ at 0x464ed70>, 'action': <function action at 0x49378c0>, 'get_default_attrs': <function get_default_attrs at 0x464ecf8>, '__doc__': 'Doc missing.', 'delete': <function delete at 0x6589ed8>}
DeleteUser.data_type_plural = <django.utils.functional.__proxy__ object at 0x65907d0>
DeleteUser.data_type_singular = <django.utils.functional.__proxy__ object at 0x6590750>
DeleteUser.delete(request, obj_id)[source]
DeleteUser.name = 'delete'
class openstack_dashboard.dashboards.project.databases.tables.InstanceBackupsTable(request, data=None, needs_form_wrapper=None, **kwargs)[source]

Bases: horizon.tables.base.DataTable

class InstanceBackupsTable.Meta[source]
InstanceBackupsTable.Meta.name = 'backups'
InstanceBackupsTable.Meta.row_actions = (<class 'openstack_dashboard.dashboards.project.database_backups.tables.RestoreLink'>, <class 'openstack_dashboard.dashboards.project.database_backups.tables.DeleteBackup'>)
InstanceBackupsTable.Meta.row_class

alias of UpdateRow

InstanceBackupsTable.Meta.status_columns = ['status']
InstanceBackupsTable.Meta.table_actions = (<class 'openstack_dashboard.dashboards.project.database_backups.tables.LaunchLink'>, <class 'openstack_dashboard.dashboards.project.database_backups.tables.DeleteBackup'>)
InstanceBackupsTable.Meta.verbose_name = <django.utils.functional.__proxy__ object at 0x658e0d0>
InstanceBackupsTable.base_actions = {'create': <LaunchLink: create>, 'delete': <DeleteBackup: delete>, 'restore': <RestoreLink: restore>}
InstanceBackupsTable.base_columns = {'name': <Column: name>, 'created': <Column: created>, 'location': <Column: location>, 'status': <Column: status>}
class openstack_dashboard.dashboards.project.databases.tables.InstancesTable(request, data=None, needs_form_wrapper=None, **kwargs)[source]

Bases: horizon.tables.base.DataTable

class InstancesTable.Meta[source]
InstancesTable.Meta.name = 'databases'
InstancesTable.Meta.row_actions = (<class 'openstack_dashboard.dashboards.project.databases.tables.CreateBackup'>, <class 'openstack_dashboard.dashboards.project.databases.tables.RestartInstance'>, <class 'openstack_dashboard.dashboards.project.databases.tables.TerminateInstance'>)
InstancesTable.Meta.row_class

alias of UpdateRow

InstancesTable.Meta.status_columns = ['status']
InstancesTable.Meta.table_actions = (<class 'openstack_dashboard.dashboards.project.databases.tables.LaunchLink'>, <class 'openstack_dashboard.dashboards.project.databases.tables.TerminateInstance'>)
InstancesTable.Meta.verbose_name = <django.utils.functional.__proxy__ object at 0x6593090>
InstancesTable.STATUS_CHOICES = (('active', True), ('shutoff', True), ('suspended', True), ('paused', True), ('error', False))
InstancesTable.base_actions = {'backup': <CreateBackup: backup>, 'launch': <LaunchLink: launch>, 'restart': <RestartInstance: restart>, 'terminate': <TerminateInstance: terminate>}
InstancesTable.base_columns = {'name': <Column: name>, 'host': <Column: host>, 'size': <Column: size>, 'status': <Column: status>}
class openstack_dashboard.dashboards.project.databases.tables.LaunchLink(attrs=None, **kwargs)[source]

Bases: horizon.tables.actions.LinkAction

LaunchLink.base_options = {'__module__': 'openstack_dashboard.dashboards.project.databases.tables', '__metaclass__': <class 'horizon.tables.actions.BaseActionMetaClass'>, 'name': 'launch', '_allowed': <function _allowed at 0x464eb90>, 'url': 'horizon:project:databases:launch', 'verbose_name': <django.utils.functional.__proxy__ object at 0x6590a90>, 'data_type_matched': <function data_type_matched at 0x464ea28>, 'get_default_classes': <function get_default_classes at 0x464ec80>, 'update': <function update at 0x464ec08>, 'get_policy_target': <function get_policy_target at 0x464eaa0>, 'get_link_url': <function get_link_url at 0x464ef50>, 'classes': ('btn-launch', 'ajax-modal'), '__repr__': <function __repr__ at 0x464ed70>, 'allowed': <function allowed at 0x464eb18>, 'get_default_attrs': <function get_default_attrs at 0x464ecf8>, 'base_options': {'__module__': 'horizon.tables.actions', '__metaclass__': <class 'horizon.tables.actions.BaseActionMetaClass'>, 'data_type_matched': <function data_type_matched at 0x464ea28>, 'get_default_classes': <function get_default_classes at 0x464ec80>, 'update': <function update at 0x464ec08>, 'get_policy_target': <function get_policy_target at 0x464eaa0>, '_allowed': <function _allowed at 0x464eb90>, '__repr__': <function __repr__ at 0x464ed70>, 'allowed': <function allowed at 0x464eb18>, 'get_default_attrs': <function get_default_attrs at 0x464ecf8>, 'base_options': {...}, '__doc__': 'Common base class for all ``Action`` classes.', '__init__': <function __init__ at 0x464e6e0>}, '__doc__': 'A table action which is simply a link rather than a form POST.\n\n .. attribute:: name\n\n Required. The short name or "slug" representing this\n action. This name should not be changed at runtime.\n\n .. attribute:: verbose_name\n\n A string which will be rendered as the link text. (Required)\n\n .. attribute:: url\n\n A string or a callable which resolves to a url to be used as the link\n target. You must either define the ``url`` attribute or override\n the ``get_link_url`` method on the class.\n\n .. attribute:: allowed_data_types\n\n A list that contains the allowed data types of the action. If the\n datum\'s type is in this list, the action will be shown on the row\n for the datum.\n\n Defaults to be an empty list (``[]``). When set to empty, the action\n will accept any kind of data.\n ', '__init__': <function __init__ at 0x464eed8>}
LaunchLink.classes = ('btn-launch', 'ajax-modal')
LaunchLink.name = 'launch'
LaunchLink.url = 'horizon:project:databases:launch'
LaunchLink.verbose_name = <django.utils.functional.__proxy__ object at 0x6590a90>
class openstack_dashboard.dashboards.project.databases.tables.RestartInstance(**kwargs)[source]

Bases: horizon.tables.actions.BatchAction

RestartInstance.action(request, obj_id)[source]
RestartInstance.action_past = <django.utils.functional.__proxy__ object at 0x6590450>
RestartInstance.action_present = <django.utils.functional.__proxy__ object at 0x6590390>
RestartInstance.allowed(request, instance=None)[source]
RestartInstance.base_options = {'__module__': 'openstack_dashboard.dashboards.project.databases.tables', '__metaclass__': <class 'horizon.tables.actions.BaseActionMetaClass'>, 'data_type_singular': <django.utils.functional.__proxy__ object at 0x65904d0>, 'update': <function update at 0x49376e0>, 'get_success_url': <function get_success_url at 0x4937758>, 'get_policy_target': <function get_policy_target at 0x464eaa0>, 'allowed': <function allowed at 0x6589de8>, 'handle': <function handle at 0x49377d0>, 'base_options': {'__module__': 'horizon.tables.actions', '__metaclass__': <class 'horizon.tables.actions.BaseActionMetaClass'>, 'data_type_matched': <function data_type_matched at 0x464ea28>, 'get_default_classes': <function get_default_classes at 0x464ec80>, 'update': <function update at 0x464ec08>, 'get_policy_target': <function get_policy_target at 0x464eaa0>, '_allowed': <function _allowed at 0x464eb90>, '__repr__': <function __repr__ at 0x464ed70>, 'allowed': <function allowed at 0x464eb18>, 'get_default_attrs': <function get_default_attrs at 0x464ecf8>, 'base_options': {...}, '__doc__': 'Common base class for all ``Action`` classes.', '__init__': <function __init__ at 0x464e6e0>}, '__init__': <function __init__ at 0x4937500>, 'name': 'restart', 'data_type_plural': <django.utils.functional.__proxy__ object at 0x6590550>, 'action_present': <django.utils.functional.__proxy__ object at 0x6590390>, 'action_past': <django.utils.functional.__proxy__ object at 0x6590450>, 'data_type_matched': <function data_type_matched at 0x464ea28>, 'get_default_classes': <function get_default_classes at 0x464ec80>, 'get_param_name': <function get_param_name at 0x464ee60>, '_allowed': <function _allowed at 0x4937578>, 'classes': ('btn-danger', 'btn-reboot'), '_get_action_name': <function _get_action_name at 0x49375f0>, '__repr__': <function __repr__ at 0x464ed70>, 'action': <function action at 0x6589e60>, 'get_default_attrs': <function get_default_attrs at 0x464ecf8>, '__doc__': 'A table action which takes batch action on one or more\n objects. This action should not require user input on a\n per-object basis.\n\n .. attribute:: name\n\n An internal name for this action.\n\n .. attribute:: action_present\n\n String or tuple/list. The display forms of the name.\n Should be a transitive verb, capitalized and translated. ("Delete",\n "Rotate", etc.) If tuple or list - then setting\n self.current_present_action = n will set the current active item\n from the list(action_present[n])\n\n You can pass a complete action name including \'data_type\' by specifying\n \'%(data_type)s\' substitution in action_present ("Delete %(data_type)s").\n Otherwise a complete action name is a format of "<action> <data_type>".\n <data_type> is determined based on the number of items.\n By passing a complete action name you allow translators to control\n the order of words as they want.\n\n .. attribute:: action_past\n\n String or tuple/list. The past tense of action_present. ("Deleted",\n "Rotated", etc.) If tuple or list - then\n setting self.current_past_action = n will set the current active item\n from the list(action_past[n])\n\n .. attribute:: data_type_singular\n\n A display name for the type of data that receives the\n action. ("Key Pair", "Floating IP", etc.)\n\n .. attribute:: data_type_plural\n\n Optional plural word for the type of data being acted\n on. Defaults to appending \'s\'. Relying on the default is bad\n for translations and should not be done.\n\n .. attribute:: success_url\n\n Optional location to redirect after completion of the delete\n action. Defaults to the current page.\n '}
RestartInstance.classes = ('btn-danger', 'btn-reboot')
RestartInstance.data_type_plural = <django.utils.functional.__proxy__ object at 0x6590550>
RestartInstance.data_type_singular = <django.utils.functional.__proxy__ object at 0x65904d0>
RestartInstance.name = 'restart'
class openstack_dashboard.dashboards.project.databases.tables.TerminateInstance(**kwargs)[source]

Bases: horizon.tables.actions.BatchAction

TerminateInstance.action(request, obj_id)[source]
TerminateInstance.action_past = <django.utils.functional.__proxy__ object at 0x6590210>
TerminateInstance.action_present = <django.utils.functional.__proxy__ object at 0x6590190>
TerminateInstance.base_options = {'__module__': 'openstack_dashboard.dashboards.project.databases.tables', '__metaclass__': <class 'horizon.tables.actions.BaseActionMetaClass'>, 'data_type_singular': <django.utils.functional.__proxy__ object at 0x6590290>, 'update': <function update at 0x49376e0>, 'get_success_url': <function get_success_url at 0x4937758>, 'get_policy_target': <function get_policy_target at 0x464eaa0>, 'allowed': <function allowed at 0x464eb18>, 'handle': <function handle at 0x49377d0>, 'base_options': {'__module__': 'horizon.tables.actions', '__metaclass__': <class 'horizon.tables.actions.BaseActionMetaClass'>, 'data_type_matched': <function data_type_matched at 0x464ea28>, 'get_default_classes': <function get_default_classes at 0x464ec80>, 'update': <function update at 0x464ec08>, 'get_policy_target': <function get_policy_target at 0x464eaa0>, '_allowed': <function _allowed at 0x464eb90>, '__repr__': <function __repr__ at 0x464ed70>, 'allowed': <function allowed at 0x464eb18>, 'get_default_attrs': <function get_default_attrs at 0x464ecf8>, 'base_options': {...}, '__doc__': 'Common base class for all ``Action`` classes.', '__init__': <function __init__ at 0x464e6e0>}, '__init__': <function __init__ at 0x4937500>, 'name': 'terminate', 'data_type_plural': <django.utils.functional.__proxy__ object at 0x6590310>, 'action_present': <django.utils.functional.__proxy__ object at 0x6590190>, 'action_past': <django.utils.functional.__proxy__ object at 0x6590210>, 'data_type_matched': <function data_type_matched at 0x464ea28>, 'get_default_classes': <function get_default_classes at 0x464ec80>, 'get_param_name': <function get_param_name at 0x464ee60>, '_allowed': <function _allowed at 0x4937578>, 'classes': ('btn-danger', 'btn-terminate'), '_get_action_name': <function _get_action_name at 0x49375f0>, '__repr__': <function __repr__ at 0x464ed70>, 'action': <function action at 0x6589d70>, 'get_default_attrs': <function get_default_attrs at 0x464ecf8>, '__doc__': 'A table action which takes batch action on one or more\n objects. This action should not require user input on a\n per-object basis.\n\n .. attribute:: name\n\n An internal name for this action.\n\n .. attribute:: action_present\n\n String or tuple/list. The display forms of the name.\n Should be a transitive verb, capitalized and translated. ("Delete",\n "Rotate", etc.) If tuple or list - then setting\n self.current_present_action = n will set the current active item\n from the list(action_present[n])\n\n You can pass a complete action name including \'data_type\' by specifying\n \'%(data_type)s\' substitution in action_present ("Delete %(data_type)s").\n Otherwise a complete action name is a format of "<action> <data_type>".\n <data_type> is determined based on the number of items.\n By passing a complete action name you allow translators to control\n the order of words as they want.\n\n .. attribute:: action_past\n\n String or tuple/list. The past tense of action_present. ("Deleted",\n "Rotated", etc.) If tuple or list - then\n setting self.current_past_action = n will set the current active item\n from the list(action_past[n])\n\n .. attribute:: data_type_singular\n\n A display name for the type of data that receives the\n action. ("Key Pair", "Floating IP", etc.)\n\n .. attribute:: data_type_plural\n\n Optional plural word for the type of data being acted\n on. Defaults to appending \'s\'. Relying on the default is bad\n for translations and should not be done.\n\n .. attribute:: success_url\n\n Optional location to redirect after completion of the delete\n action. Defaults to the current page.\n '}
TerminateInstance.classes = ('btn-danger', 'btn-terminate')
TerminateInstance.data_type_plural = <django.utils.functional.__proxy__ object at 0x6590310>
TerminateInstance.data_type_singular = <django.utils.functional.__proxy__ object at 0x6590290>
TerminateInstance.name = 'terminate'
class openstack_dashboard.dashboards.project.databases.tables.UpdateRow(table, datum=None)[source]

Bases: horizon.tables.base.Row

UpdateRow.ajax = True
UpdateRow.get_data(request, instance_id)[source]
class openstack_dashboard.dashboards.project.databases.tables.UsersTable(request, data=None, needs_form_wrapper=None, **kwargs)[source]

Bases: horizon.tables.base.DataTable

class UsersTable.Meta[source]
UsersTable.Meta.name = 'users'
UsersTable.Meta.row_actions = [<class 'openstack_dashboard.dashboards.project.databases.tables.DeleteUser'>]
UsersTable.Meta.table_actions = [<class 'openstack_dashboard.dashboards.project.databases.tables.DeleteUser'>]
UsersTable.Meta.verbose_name = <django.utils.functional.__proxy__ object at 0x65936d0>
UsersTable.base_actions = {'delete': <DeleteUser: delete>}
UsersTable.base_columns = {'name': <Column: name>, 'host': <Column: host>, 'databases': <Column: databases>}
UsersTable.get_object_id(datum)[source]
openstack_dashboard.dashboards.project.databases.tables.get_databases(user)[source]
openstack_dashboard.dashboards.project.databases.tables.get_size(instance)[source]

Previous topic

The openstack_dashboard.dashboards.project.databases.tests Module

Next topic

The openstack_dashboard.dashboards.project.databases.urls Module

This Page