feat(itam): Add url function to Device model

ref: #248 #365 #366
This commit is contained in:
2024-10-27 17:50:01 +09:30
parent d57d4ad96a
commit 43f90251b0
2 changed files with 11 additions and 1 deletions

View File

@ -7,6 +7,7 @@ from django.db import models
from django.forms import ValidationError
from rest_framework import serializers
from rest_framework.reverse import reverse
from access.fields import *
from access.models import TenancyObject
@ -310,6 +311,15 @@ class Device(DeviceCommonFieldsName, SaveHistory):
]
def get_url( self, request = None ) -> str:
if request:
return reverse("v2:_api_v2_device-detail", request=request, kwargs={'pk': self.id})
return reverse("v2:_api_v2_device-detail", kwargs={'pk': self.id})
def save(
self, force_insert=False, force_update=False, using=None, update_fields=None
):

View File

@ -55,7 +55,7 @@ class DeviceModelSerializer(DeviceBaseSerializer):
def get_url(self, item):
return {
'_self': reverse("v2:_api_v2_device-detail", request=self._context['view'].request, kwargs={'pk': item.pk}),
'_self': item.get_url( request = self._context['view'].request ),
'device_model': reverse("v2:_api_v2_device_model-list", request=self._context['view'].request),
'device_type': reverse("v2:_api_v2_device_type-list", request=self._context['view'].request),
'external_links': reverse("v2:_api_v2_external_link-list", request=self._context['view'].request) + '?devices=true',