Delete instance,volume,etc confirmation is missing name or ID

If click the name link and go into the details page for the instance, volume, etc.
And attempt to delete. It will pop up a message, but omit the name/id.
Need to add the property of 'data-display' in detail page.

Change-Id: I9c1966dc7942a27903237e2786edbcd2fbd936ea
Closes-Bug: #1680329
This commit is contained in:
wei.ying 2017-04-06 20:09:30 +08:00
parent 24a4905f5e
commit fa3528933c
30 changed files with 57 additions and 24 deletions
openstack_dashboard/dashboards
admin
floating_ips/templates/floating_ips
networks
identity
projects/templates/projects
users/templates/users
project
backups/templates/backups
cg_snapshots/templates/cg_snapshots
firewalls
images/templates/images/images
instances/templates/instances
networks
routers
ports
templates/routers
snapshots/templates/snapshots
stacks/templates/stacks
volumes/templates/volumes
vpn

@ -17,7 +17,7 @@
<dd>{{ floating_ip.tenant_id|default:"-" }}</dd> <dd>{{ floating_ip.tenant_id|default:"-" }}</dd>
<dt>{% trans "Floating IP address" %}</dt> <dt>{% trans "Floating IP address" %}</dt>
<dd>{{ floating_ip.ip|default:_("None") }}</dd> <dd data-display="{{ floating_ip.ip|default:floating_ip.id }}">{{ floating_ip.ip|default:_("None") }}</dd>
<dt>{% trans "Status" %}</dt> <dt>{% trans "Status" %}</dt>
<dd>{{ floating_ip.status|default:_("None") }}</dd> <dd>{{ floating_ip.status|default:_("None") }}</dd>

@ -100,6 +100,9 @@ class DHCPAgentsTable(tables.DataTable):
filters=(utils_filters.parse_isotime, filters=(utils_filters.parse_isotime,
filters.timesince)) filters.timesince))
def get_object_display(self, agent):
return agent.host
class Meta(object): class Meta(object):
name = "agents" name = "agents"
verbose_name = _("DHCP Agents") verbose_name = _("DHCP Agents")

@ -113,7 +113,7 @@ class SubnetsTable(tables.DataTable):
failure_url = reverse_lazy('horizon:admin:networks:index') failure_url = reverse_lazy('horizon:admin:networks:index')
def get_object_display(self, subnet): def get_object_display(self, subnet):
return subnet.id return subnet.name_or_id
@memoized.memoized_method @memoized.memoized_method
def _get_network(self): def _get_network(self):

@ -110,6 +110,9 @@ class NetworksTable(tables.DataTable):
verbose_name=_("Admin State"), verbose_name=_("Admin State"),
display_choices=DISPLAY_CHOICES) display_choices=DISPLAY_CHOICES)
def get_object_display(self, network):
return network.name_or_id
class Meta(object): class Meta(object):
name = "networks" name = "networks"
verbose_name = _("Networks") verbose_name = _("Networks")

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Project Name" %}</dt> <dt>{% trans "Project Name" %}</dt>
<dd>{{ project.name }}</dd> <dd data-display="{{ project.name|default:project.id }}">{{ project.name }}</dd>
<dt>{% trans "Project ID" %}</dt> <dt>{% trans "Project ID" %}</dt>
<dd>{{ project.id }}</dd> <dd>{{ project.id }}</dd>
<dt>{% trans "Enabled" %}</dt> <dt>{% trans "Enabled" %}</dt>

@ -11,7 +11,7 @@
<dd>{{ domain_name }}</dd> <dd>{{ domain_name }}</dd>
{% endif %} {% endif %}
<dt>{% trans "User Name" %}</dt> <dt>{% trans "User Name" %}</dt>
<dd>{{ user.name }}</dd> <dd data-display="{{ user.name|default:user.id }}">{{ user.name }}</dd>
{% if description %} {% if description %}
<dt>{% trans "Description" %}</dt> <dt>{% trans "Description" %}</dt>
<dd>{{ description }}</dd> <dd>{{ description }}</dd>

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ backup.name }}</dd> <dd data-display="{{ backup.name|default:backup.id }}">{{ backup.name }}</dd>
<dt>{% trans "ID" %}</dt> <dt>{% trans "ID" %}</dt>
<dd>{{ backup.id }}</dd> <dd>{{ backup.id }}</dd>
{% if backup.description %} {% if backup.description %}

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ cg_snapshot.name }}</dd> <dd data-display="{{ cg_snapshot.name|default:cg_snapshot.id }}">{{ cg_snapshot.name }}</dd>
<dt>{% trans "ID" %}</dt> <dt>{% trans "ID" %}</dt>
<dd>{{ cg_snapshot.id }}</dd> <dd>{{ cg_snapshot.id }}</dd>
{% if cg_snapshot.description %} {% if cg_snapshot.description %}

@ -318,6 +318,9 @@ class RulesTable(tables.DataTable):
link=get_policy_link, link=get_policy_link,
verbose_name=_("In Policy")) verbose_name=_("In Policy"))
def get_object_display(self, rule):
return rule.name_or_id
class Meta(object): class Meta(object):
name = "rulestable" name = "rulestable"
verbose_name = _("Rules") verbose_name = _("Rules")
@ -341,6 +344,9 @@ class PoliciesTable(tables.DataTable):
verbose_name=_("Audited"), verbose_name=_("Audited"),
filters=(filters.yesno, filters.capfirst)) filters=(filters.yesno, filters.capfirst))
def get_object_display(self, policy):
return policy.name_or_id
class Meta(object): class Meta(object):
name = "policiestable" name = "policiestable"
verbose_name = _("Policies") verbose_name = _("Policies")
@ -391,6 +397,9 @@ class FirewallsTable(tables.DataTable):
verbose_name=_("Admin State"), verbose_name=_("Admin State"),
display_choices=ADMIN_STATE_DISPLAY_CHOICES) display_choices=ADMIN_STATE_DISPLAY_CHOICES)
def get_object_display(self, firewall):
return firewall.name_or_id
class Meta(object): class Meta(object):
name = "firewallstable" name = "firewallstable"
verbose_name = _("Firewalls") verbose_name = _("Firewalls")

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ firewall.name|default:_("-") }}</dd> <dd data-display="{{ firewall.name_or_id }}">{{ firewall.name|default:_("-") }}</dd>
<dt>{% trans "Description" %}</dt> <dt>{% trans "Description" %}</dt>
<dd>{{ firewall.description|default:_("-") }}</dd> <dd>{{ firewall.description|default:_("-") }}</dd>

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ policy.name|default:_("-") }}</dd> <dd data-display="{{ policy.name_or_id }}">{{ policy.name|default:_("-") }}</dd>
<dt>{% trans "Description" %}</dt> <dt>{% trans "Description" %}</dt>
<dd>{{ policy.description|default:_("-") }}</dd> <dd>{{ policy.description|default:_("-") }}</dd>

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ rule.name|default:_("-") }}</dd> <dd data-display="{{ rule.name_or_id }}">{{ rule.name|default:_("-") }}</dd>
<dt>{% trans "Description" %}</dt> <dt>{% trans "Description" %}</dt>
<dd>{{ rule.description|default:_("-") }}</dd> <dd>{{ rule.description|default:_("-") }}</dd>

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ image.name|default:_("None") }}</dd> <dd data-display="{{ image.name|default:image.id }}">{{ image.name|default:_("None") }}</dd>
{% if image.properties.description %} {% if image.properties.description %}
<dt>{% trans "Description" %}</dt> <dt>{% trans "Description" %}</dt>
<dd>{{ image.properties.description }}</dd> <dd>{{ image.properties.description }}</dd>

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ instance.name }}</dd> <dd data-display="{{ instance.name|default:instance.id }}">{{ instance.name }}</dd>
<dt>{% trans "ID" %}</dt> <dt>{% trans "ID" %}</dt>
<dd>{{ instance.id }}</dd> <dd>{{ instance.id }}</dd>
<dt>{% trans "Status" %}</dt> <dt>{% trans "Status" %}</dt>

@ -132,7 +132,7 @@ class PortsTable(tables.DataTable):
verbose_name=_("MAC Learning State")) verbose_name=_("MAC Learning State"))
def get_object_display(self, port): def get_object_display(self, port):
return port.id return port.name_or_id
class Meta(object): class Meta(object):
name = "ports" name = "ports"

@ -152,6 +152,9 @@ class SubnetsTable(tables.DataTable):
exceptions.handle(self.request, msg,) exceptions.handle(self.request, msg,)
return network return network
def get_object_display(self, subnet):
return subnet.name_or_id
class Meta(object): class Meta(object):
name = "subnets" name = "subnets"
verbose_name = _("Subnets") verbose_name = _("Subnets")

@ -189,6 +189,9 @@ class NetworksTable(tables.DataTable):
verbose_name=_("Admin State"), verbose_name=_("Admin State"),
display_choices=DISPLAY_CHOICES) display_choices=DISPLAY_CHOICES)
def get_object_display(self, network):
return network.name_or_id
class Meta(object): class Meta(object):
name = "networks" name = "networks"
verbose_name = _("Networks") verbose_name = _("Networks")

@ -5,7 +5,7 @@
<dt title="{% trans 'Name' %}">{% trans "Name" %}</dt> <dt title="{% trans 'Name' %}">{% trans "Name" %}</dt>
<dd>{{ network.name|default:_("None") }}</dd> <dd>{{ network.name|default:_("None") }}</dd>
<dt title="{% trans 'ID' %}">{% trans "ID" %}</dt> <dt title="{% trans 'ID' %}">{% trans "ID" %}</dt>
<dd data-display="{{ network.id|default:_("None") }}">{{ network.id|default:_("None") }}</dd> <dd data-display="{{ network.name_or_id }}">{{ network.id|default:_("None") }}</dd>
<dt title="{% trans 'Project ID' %}">{% trans "Project ID" %}</dt> <dt title="{% trans 'Project ID' %}">{% trans "Project ID" %}</dt>
<dd>{{ network.tenant_id|default:_("-") }}</dd> <dd>{{ network.tenant_id|default:_("-") }}</dd>
<dt title="{% trans 'Status' %}">{% trans "Status" %}</dt> <dt title="{% trans 'Status' %}">{% trans "Status" %}</dt>

@ -5,7 +5,7 @@
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ port.name|default:_("None") }}</dd> <dd>{{ port.name|default:_("None") }}</dd>
<dt>{% trans "ID" %}</dt> <dt>{% trans "ID" %}</dt>
<dd data-display="{{ port.id|default:_("None") }}">{{ port.id|default:_("None") }}</dd> <dd data-display="{{ port.name_or_id }}">{{ port.id|default:_("None") }}</dd>
<dt>{% trans "Network Name" %}</dt> <dt>{% trans "Network Name" %}</dt>
<dd>{{ port.network_name|default:_("None") }}</dd> <dd>{{ port.network_name|default:_("None") }}</dd>
<dt>{% trans "Network ID" %}</dt> <dt>{% trans "Network ID" %}</dt>

@ -5,7 +5,7 @@
<dt title="{% trans 'Name' %}">{% trans "Name" %}</dt> <dt title="{% trans 'Name' %}">{% trans "Name" %}</dt>
<dd>{{ subnet.name|default:_("None") }}</dd> <dd>{{ subnet.name|default:_("None") }}</dd>
<dt title="{% trans 'ID' %}">{% trans "ID" %}</dt> <dt title="{% trans 'ID' %}">{% trans "ID" %}</dt>
<dd data-display="{{ subnet.id|default:_("None") }}">{{subnet.id|default:_("None") }}</dd> <dd data-display="{{ subnet.name_or_id }}">{{subnet.id|default:_("None") }}</dd>
<dt title="{% trans 'Network Name' %}">{% trans "Network Name" %}</dt> <dt title="{% trans 'Network Name' %}">{% trans "Network Name" %}</dt>
<dd>{{ subnet.network_name|default:_("None") }}</dd> <dd>{{ subnet.network_name|default:_("None") }}</dd>
<dt title="{% trans 'Network ID' %}">{% trans "Network ID" %}</dt> <dt title="{% trans 'Network ID' %}">{% trans "Network ID" %}</dt>

@ -119,7 +119,7 @@ class PortsTable(tables.DataTable):
display_choices=DISPLAY_CHOICES) display_choices=DISPLAY_CHOICES)
def get_object_display(self, port): def get_object_display(self, port):
return port.id return port.name_or_id
class Meta(object): class Meta(object):
name = "interfaces" name = "interfaces"

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ router.name|default:_("None") }}</dd> <dd data-display="{{ router.name_or_id }}">{{ router.name|default:_("None") }}</dd>
<dt>{% trans "ID" %}</dt> <dt>{% trans "ID" %}</dt>
<dd>{{ router.id }}</dd> <dd>{{ router.id }}</dd>
<dt>{% trans "Description" %}</dt> <dt>{% trans "Description" %}</dt>

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ snapshot.name }}</dd> <dd data-display="{{ snapshot.name|default:snapshot.id }}">{{ snapshot.name }}</dd>
<dt>{% trans "ID" %}</dt> <dt>{% trans "ID" %}</dt>
<dd>{{ snapshot.id }}</dd> <dd>{{ snapshot.id }}</dd>
{% if snapshot.description %} {% if snapshot.description %}

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ stack.stack_name }}</dd> <dd data-display="{{ stack.stack_name|default:stack.id }}">{{ stack.stack_name }}</dd>
<dt>{% trans "ID" %}</dt> <dt>{% trans "ID" %}</dt>
<dd>{{ stack.id }}</dd> <dd>{{ stack.id }}</dd>
<dt>{% trans "Description" %}</dt> <dt>{% trans "Description" %}</dt>

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ volume.name }}</dd> <dd data-display="{{ volume.name|default:volume.id }}">{{ volume.name }}</dd>
<dt>{% trans "ID" %}</dt> <dt>{% trans "ID" %}</dt>
<dd>{{ volume.id }}</dd> <dd>{{ volume.id }}</dd>
{% if volume.description %} {% if volume.description %}

@ -332,6 +332,9 @@ class IPSecSiteConnectionsTable(tables.DataTable):
status_choices=STATUS_CHOICES, status_choices=STATUS_CHOICES,
display_choices=STATUS_DISPLAY_CHOICES) display_choices=STATUS_DISPLAY_CHOICES)
def get_object_display(self, ipsecsiteconnection):
return ipsecsiteconnection.name_or_id
class Meta(object): class Meta(object):
name = "ipsecsiteconnectionstable" name = "ipsecsiteconnectionstable"
verbose_name = _("IPSec Site Connections") verbose_name = _("IPSec Site Connections")
@ -388,6 +391,9 @@ class VPNServicesTable(tables.DataTable):
status_choices=STATUS_CHOICES, status_choices=STATUS_CHOICES,
display_choices=STATUS_DISPLAY_CHOICES) display_choices=STATUS_DISPLAY_CHOICES)
def get_object_display(self, vpnservice):
return vpnservice.name_or_id
class Meta(object): class Meta(object):
name = "vpnservicestable" name = "vpnservicestable"
verbose_name = _("VPN Services") verbose_name = _("VPN Services")
@ -422,6 +428,9 @@ class IKEPoliciesTable(tables.DataTable):
verbose_name=_('Encryption algorithm')) verbose_name=_('Encryption algorithm'))
pfs = tables.Column("pfs", verbose_name=_('PFS')) pfs = tables.Column("pfs", verbose_name=_('PFS'))
def get_object_display(self, ikepolicy):
return ikepolicy.name_or_id
class Meta(object): class Meta(object):
name = "ikepoliciestable" name = "ikepoliciestable"
verbose_name = _("IKE Policies") verbose_name = _("IKE Policies")
@ -443,6 +452,9 @@ class IPSecPoliciesTable(tables.DataTable):
verbose_name=_('Encryption algorithm')) verbose_name=_('Encryption algorithm'))
pfs = tables.Column("pfs", verbose_name=_('PFS')) pfs = tables.Column("pfs", verbose_name=_('PFS'))
def get_object_display(self, ipsecpolicy):
return ipsecpolicy.name_or_id
class Meta(object): class Meta(object):
name = "ipsecpoliciestable" name = "ipsecpoliciestable"
verbose_name = _("IPSec Policies") verbose_name = _("IPSec Policies")

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ ikepolicy.name|default:_("None") }}</dd> <dd data-display="{{ ikepolicy.name_or_id }}">{{ ikepolicy.name|default:_("None") }}</dd>
<dt>{% trans "Description" %}</dt> <dt>{% trans "Description" %}</dt>
<dd>{{ ikepolicy.description|default:_("None") }}</dd> <dd>{{ ikepolicy.description|default:_("None") }}</dd>

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ ipsecpolicy.name|default:_("None") }}</dd> <dd data-display="{{ ipsecpolicy.name_or_id }}">{{ ipsecpolicy.name|default:_("None") }}</dd>
<dt>{% trans "Description" %}</dt> <dt>{% trans "Description" %}</dt>
<dd>{{ ipsecpolicy.description|default:_("None") }}</dd> <dd>{{ ipsecpolicy.description|default:_("None") }}</dd>

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ ipsecsiteconnection.name|default:_("None") }}</dd> <dd data-display="{{ ipsecsiteconnection.name_or_id }}">{{ ipsecsiteconnection.name|default:_("None") }}</dd>
<dt>{% trans "Description" %}</dt> <dt>{% trans "Description" %}</dt>
<dd>{{ ipsecsiteconnection.description|default:_("None") }}</dd> <dd>{{ ipsecsiteconnection.description|default:_("None") }}</dd>

@ -3,7 +3,7 @@
<div class="detail"> <div class="detail">
<dl class="dl-horizontal"> <dl class="dl-horizontal">
<dt>{% trans "Name" %}</dt> <dt>{% trans "Name" %}</dt>
<dd>{{ vpnservice.name|default:_("None") }}</dd> <dd data-display="{{ vpnservice.name_or_id }}">{{ vpnservice.name|default:_("None") }}</dd>
<dt>{% trans "Description" %}</dt> <dt>{% trans "Description" %}</dt>
<dd>{{ vpnservice.description|default:_("None") }}</dd> <dd>{{ vpnservice.description|default:_("None") }}</dd>