mirror of
https://github.com/jumpserver/jumpserver.git
synced 2025-06-26 15:01:59 +00:00
补全资产api
This commit is contained in:
parent
f81805f361
commit
d5c13df6be
@ -1,4 +1,7 @@
|
|||||||
from .asset import *
|
from .asset import *
|
||||||
from .host import *
|
from .host import *
|
||||||
from .database import *
|
from .database import *
|
||||||
|
from .web import *
|
||||||
|
from .cloud import *
|
||||||
|
from .network import *
|
||||||
from .permission import *
|
from .permission import *
|
||||||
|
@ -40,7 +40,7 @@ class AssetViewSet(SuggestionMixin, NodeFilterMixin, OrgBulkModelViewSet):
|
|||||||
filterset_class = AssetFilterSet
|
filterset_class = AssetFilterSet
|
||||||
search_fields = ("name", "ip")
|
search_fields = ("name", "ip")
|
||||||
ordering_fields = ("name", "ip", "port")
|
ordering_fields = ("name", "ip", "port")
|
||||||
ordering = ('name', )
|
ordering = ('name',)
|
||||||
serializer_classes = (
|
serializer_classes = (
|
||||||
('default', serializers.AssetSerializer),
|
('default', serializers.AssetSerializer),
|
||||||
('suggestion', serializers.MiniAssetSerializer),
|
('suggestion', serializers.MiniAssetSerializer),
|
||||||
@ -173,5 +173,3 @@ class AssetsTaskCreateApi(AssetsTaskMixin, generics.CreateAPIView):
|
|||||||
has = self.request.user.has_perm(perm_required)
|
has = self.request.user.has_perm(perm_required)
|
||||||
if not has:
|
if not has:
|
||||||
self.permission_denied(request)
|
self.permission_denied(request)
|
||||||
|
|
||||||
|
|
||||||
|
15
apps/assets/api/asset/cloud.py
Normal file
15
apps/assets/api/asset/cloud.py
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
from assets.models import Cloud
|
||||||
|
from assets.serializers import CloudSerializer
|
||||||
|
|
||||||
|
from .asset import AssetViewSet
|
||||||
|
|
||||||
|
__all__ = ['CloudViewSet']
|
||||||
|
|
||||||
|
|
||||||
|
class CloudViewSet(AssetViewSet):
|
||||||
|
model = Cloud
|
||||||
|
|
||||||
|
def get_serializer_classes(self):
|
||||||
|
serializer_classes = super().get_serializer_classes()
|
||||||
|
serializer_classes['default'] = CloudSerializer
|
||||||
|
return serializer_classes
|
@ -1,13 +1,13 @@
|
|||||||
|
|
||||||
from assets.serializers import HostSerializer
|
from assets.serializers import HostSerializer
|
||||||
from assets.models import Network
|
from assets.models import Networking
|
||||||
from .asset import AssetViewSet
|
from .asset import AssetViewSet
|
||||||
|
|
||||||
__all__ = ['NetworkViewSet']
|
__all__ = ['NetworkViewSet']
|
||||||
|
|
||||||
|
|
||||||
class NetworkViewSet(AssetViewSet):
|
class NetworkViewSet(AssetViewSet):
|
||||||
model = Network
|
model = Networking
|
||||||
|
|
||||||
def get_serializer_classes(self):
|
def get_serializer_classes(self):
|
||||||
serializer_classes = super().get_serializer_classes()
|
serializer_classes = super().get_serializer_classes()
|
||||||
|
15
apps/assets/api/asset/web.py
Normal file
15
apps/assets/api/asset/web.py
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
from assets.models import Web
|
||||||
|
from assets.serializers import WebSerializer
|
||||||
|
|
||||||
|
from .asset import AssetViewSet
|
||||||
|
|
||||||
|
__all__ = ['WebViewSet']
|
||||||
|
|
||||||
|
|
||||||
|
class WebViewSet(AssetViewSet):
|
||||||
|
model = Web
|
||||||
|
|
||||||
|
def get_serializer_classes(self):
|
||||||
|
serializer_classes = super().get_serializer_classes()
|
||||||
|
serializer_classes['default'] = WebSerializer
|
||||||
|
return serializer_classes
|
@ -1,11 +1,11 @@
|
|||||||
from rest_framework import serializers
|
from rest_framework import serializers
|
||||||
|
|
||||||
from assets.models import DeviceInfo, Host, Database, Networking, Cloud
|
from assets.models import DeviceInfo, Host, Database, Networking, Cloud, Web
|
||||||
from .common import AssetSerializer
|
from .common import AssetSerializer
|
||||||
|
|
||||||
__all__ = [
|
__all__ = [
|
||||||
'DeviceSerializer', 'HostSerializer', 'DatabaseSerializer',
|
'DeviceSerializer', 'HostSerializer', 'DatabaseSerializer',
|
||||||
'NetworkingSerializer', 'CloudSerializer',
|
'NetworkingSerializer', 'CloudSerializer', 'WebSerializer',
|
||||||
]
|
]
|
||||||
|
|
||||||
|
|
||||||
@ -34,12 +34,18 @@ class DatabaseSerializer(AssetSerializer):
|
|||||||
fields = AssetSerializer.Meta.fields + ['db_name']
|
fields = AssetSerializer.Meta.fields + ['db_name']
|
||||||
|
|
||||||
|
|
||||||
class NetworkingSerializer(AssetSerializer):
|
class WebSerializer(AssetSerializer):
|
||||||
class Meta(AssetSerializer.Meta):
|
class Meta(AssetSerializer.Meta):
|
||||||
model = Networking
|
model = Web
|
||||||
|
fields = AssetSerializer.Meta.fields + ['url']
|
||||||
|
|
||||||
|
|
||||||
class CloudSerializer(AssetSerializer):
|
class CloudSerializer(AssetSerializer):
|
||||||
class Meta(AssetSerializer.Meta):
|
class Meta(AssetSerializer.Meta):
|
||||||
model = Cloud
|
model = Cloud
|
||||||
fields = AssetSerializer.Meta.fields + ['cluster']
|
fields = AssetSerializer.Meta.fields + ['cluster']
|
||||||
|
|
||||||
|
|
||||||
|
class NetworkingSerializer(AssetSerializer):
|
||||||
|
class Meta(AssetSerializer.Meta):
|
||||||
|
model = Networking
|
||||||
|
@ -1,10 +1,7 @@
|
|||||||
# coding:utf-8
|
# coding:utf-8
|
||||||
from django.urls import path, re_path
|
from django.urls import path
|
||||||
from rest_framework_nested import routers
|
|
||||||
from rest_framework_bulk.routes import BulkRouter
|
from rest_framework_bulk.routes import BulkRouter
|
||||||
|
|
||||||
from common import api as capi
|
|
||||||
|
|
||||||
from .. import api
|
from .. import api
|
||||||
|
|
||||||
app_name = 'assets'
|
app_name = 'assets'
|
||||||
@ -13,6 +10,9 @@ router = BulkRouter()
|
|||||||
router.register(r'assets', api.AssetViewSet, 'asset')
|
router.register(r'assets', api.AssetViewSet, 'asset')
|
||||||
router.register(r'hosts', api.HostViewSet, 'host')
|
router.register(r'hosts', api.HostViewSet, 'host')
|
||||||
router.register(r'databases', api.DatabaseViewSet, 'database')
|
router.register(r'databases', api.DatabaseViewSet, 'database')
|
||||||
|
router.register(r'webs', api.WebViewSet, 'web')
|
||||||
|
router.register(r'clouds', api.CloudViewSet, 'cloud')
|
||||||
|
router.register(r'networks', api.NetworkViewSet, 'network')
|
||||||
router.register(r'accounts', api.AccountViewSet, 'account')
|
router.register(r'accounts', api.AccountViewSet, 'account')
|
||||||
router.register(r'account-templates', api.AccountTemplateViewSet, 'account-template')
|
router.register(r'account-templates', api.AccountTemplateViewSet, 'account-template')
|
||||||
router.register(r'account-secrets', api.AccountSecretsViewSet, 'account-secret')
|
router.register(r'account-secrets', api.AccountSecretsViewSet, 'account-secret')
|
||||||
|
Loading…
Reference in New Issue
Block a user