Пример #1
0
 def test_generate_html_link(self):
     url = generate_html_link(
         'http://test.com/',
         label='Name',
         params={'param': 1},
     )
     self.assertEqual(url, '<a href="http://test.com/?param=1">Name</a>')
Пример #2
0
    def location(self):
        """
        Additional column 'location' display filter by:
        data center, server_room, rack, position (if is blade)
        """
        base_url = reverse('admin:data_center_datacenterasset_changelist')
        position = self.position
        if self.is_blade:
            position = generate_html_link(
                base_url,
                label=position,
                params={
                    'rack': self.rack_id,
                    'position__start': self.position,
                    'position__end': self.position
                },
            )

        result = [
            generate_html_link(
                base_url,
                label=self.rack.server_room.data_center.name,
                params={
                    'rack__server_room__data_center':
                        self.rack.server_room.data_center_id
                },
            ),
            generate_html_link(
                base_url,
                label=self.rack.server_room.name,
                params={'rack__server_room': self.rack.server_room_id},
            ),
            generate_html_link(
                base_url,
                label=self.rack.name,
                params={'rack': self.rack_id},
            )
        ] if self.rack and self.rack.server_room else []

        if self.position:
            result.append(str(position))
        if self.slot_no:
            result.append(str(self.slot_no))

        return '&nbsp;/&nbsp;'.join(result) if self.rack else '&mdash;'
Пример #3
0
 def go_to_visualization(self, obj):
     if not obj.rack:
         return '&mdash;'
     url = '{}#/sr/{}/rack/{}'.format(
         reverse('dc_view'),
         obj.rack.server_room_id,
         obj.rack.id,
     )
     label = '&nbsp;/&nbsp;'.join(obj.get_location())
     return generate_html_link(url, label=label, params={})
Пример #4
0
 def _get_asset_hostname(self, obj):
     return generate_html_link(
         obj.baseobject.get_absolute_url(),
         label=obj.baseobject.asset.hostname,
         params={},
     )
Пример #5
0
 def _get_support_type(self, obj):
     return generate_html_link(
         obj.support.get_absolute_url(),
         label=obj.support.support_type,
         params={},
     )