fix: remove trailing slant from URLs

ref: #947
This commit is contained in:
2025-08-12 12:50:27 +09:30
parent 3131258491
commit 6732315b96
14 changed files with 100 additions and 98 deletions

View File

@ -34,17 +34,17 @@ router = DefaultRouter(trailing_slash=False)
router.register('', access_v2.Index, basename = '_api_v2_access_home') router.register('', access_v2.Index, basename = '_api_v2_access_home')
router.register( router.register(
prefix = '(?P<model_name>[company]+)', viewset = entity.ViewSet, prefix = '/(?P<model_name>[company]+)', viewset = entity.ViewSet,
feature_flag = '2025-00008',basename = '_api_v2_company' feature_flag = '2025-00008',basename = '_api_v2_company'
) )
router.register( router.register(
prefix=f'entity/(?P<model_name>[{entity_type_names}]+)?', viewset = entity.ViewSet, prefix=f'/entity/(?P<model_name>[{entity_type_names}]+)?', viewset = entity.ViewSet,
feature_flag = '2025-00002', basename = '_api_entity_sub' feature_flag = '2025-00002', basename = '_api_entity_sub'
) )
router.register( router.register(
prefix = 'entity', viewset = entity.NoDocsViewSet, prefix = '/entity', viewset = entity.NoDocsViewSet,
feature_flag = '2025-00002', basename = '_api_entity' feature_flag = '2025-00002', basename = '_api_entity'
) )
@ -54,7 +54,7 @@ router.register(
# ) # )
router.register( router.register(
prefix = 'tenant', viewset = organization.ViewSet, prefix = '/tenant', viewset = organization.ViewSet,
basename = '_api_tenant' basename = '_api_tenant'
) )
@ -64,7 +64,7 @@ router.register(
# ) # )
router.register( router.register(
prefix = 'tenant/(?P<organization_id>[0-9]+)/team', viewset = team_v2.ViewSet, prefix = '/tenant/(?P<organization_id>[0-9]+)/team', viewset = team_v2.ViewSet,
basename = '_api_v2_organization_team' basename = '_api_v2_organization_team'
) )
@ -75,13 +75,13 @@ router.register(
# ) # )
router.register( router.register(
prefix = 'access/tenant/(?P<organization_id>[0-9]+)/team/(?P<team_id>[0-9]+)/user', prefix = '/access/tenant/(?P<organization_id>[0-9]+)/team/(?P<team_id>[0-9]+)/user',
viewset = team_user_v2.ViewSet, viewset = team_user_v2.ViewSet,
basename = '_api_v2_organization_team_user' basename = '_api_v2_organization_team_user'
) )
router.register( router.register(
prefix = 'role', viewset = role.ViewSet, prefix = '/role', viewset = role.ViewSet,
feature_flag = '2025-00003', basename = '_api_role' feature_flag = '2025-00003', basename = '_api_role'
) )

View File

@ -42,7 +42,7 @@ asset_type_names = str(asset_type_names)[:-1]
if not asset_type_names: if not asset_type_names:
asset_type_names = 'none' asset_type_names = 'none'
router.register(f'asset/(?P<model_name>[{asset_type_names}]+)?', asset.ViewSet, feature_flag = '2025-00004', basename='_api_asset_sub') router.register(f'/asset/(?P<model_name>[{asset_type_names}]+)?', asset.ViewSet, feature_flag = '2025-00004', basename='_api_asset_sub')
router.register('asset', asset.NoDocsViewSet, feature_flag = '2025-00004', basename='_api_asset') router.register('/asset', asset.NoDocsViewSet, feature_flag = '2025-00004', basename='_api_asset')
urlpatterns = router.urls urlpatterns = router.urls

View File

@ -61,22 +61,22 @@ router = DefaultRouter(trailing_slash=False)
router.register('', v2.Index, basename='_api_v2_home') router.register('', v2.Index, basename='_api_v2_home')
router.register('base', base_index_v2.Index, basename='_api_v2_base_home') router.register('/base', base_index_v2.Index, basename='_api_v2_base_home')
router.register('base/content_type', content_type_v2.ViewSet, basename='_api_v2_content_type') router.register('/base/content_type', content_type_v2.ViewSet, basename='_api_v2_content_type')
router.register('base/permission', permission_v2.ViewSet, basename='_api_v2_permission') router.register('/base/permission', permission_v2.ViewSet, basename='_api_v2_permission')
router.register('base/user', user_v2.ViewSet, basename='_api_v2_user') router.register('/base/user', user_v2.ViewSet, basename='_api_v2_user')
router.register( router.register(
prefix = f'(?P<app_label>[{history_app_labels}]+)/(?P<model_name>[{history_type_names} \ prefix = f'/(?P<app_label>[{history_app_labels}]+)/(?P<model_name>[{history_type_names} \
]+)/(?P<model_id>[0-9]+)/history', ]+)/(?P<model_id>[0-9]+)/history',
viewset = audit_history.ViewSet, viewset = audit_history.ViewSet,
basename = '_api_centurionaudit_sub' basename = '_api_centurionaudit_sub'
) )
router.register( router.register(
prefix = f'(?P<app_label>[{notes_app_labels}]+)/(?P<model_name>[{notes_type_names} \ prefix = f'/(?P<app_label>[{notes_app_labels}]+)/(?P<model_name>[{notes_type_names} \
]+)/(?P<model_id>[0-9]+)/notes', ]+)/(?P<model_id>[0-9]+)/notes',
viewset = centurion_model_notes.ViewSet, viewset = centurion_model_notes.ViewSet,
basename = '_api_centurionmodelnote_sub' basename = '_api_centurionmodelnote_sub'
@ -85,24 +85,24 @@ router.register(
urlpatterns = [ urlpatterns = [
path('schema', SpectacularAPIView.as_view(api_version='v2'), name='schema-v2',), path('/schema', SpectacularAPIView.as_view(api_version='v2'), name='schema-v2',),
path('docs', SpectacularSwaggerView.as_view(url_name='schema-v2'), name='_api_v2_docs'), path('/docs', SpectacularSwaggerView.as_view(url_name='schema-v2'), name='_api_v2_docs'),
] ]
urlpatterns += router.urls urlpatterns += router.urls
urlpatterns += [ urlpatterns += [
path(route = "access/", view = include("access.urls_api")), path(route = "/access", view = include("access.urls_api")),
path(route = "accounting/", view = include("accounting.urls")), path(route = "/accounting", view = include("accounting.urls")),
path(route = "assistance/", view = include("assistance.urls_api")), path(route = "/assistance", view = include("assistance.urls_api")),
path(route = "config_management/", view = include("config_management.urls_api")), path(route = "/config_management", view = include("config_management.urls_api")),
path(route = "core/", view = include("core.urls_api")), path(route = "/core", view = include("core.urls_api")),
path(route = "devops/", view = include("devops.urls")), path(route = "/devops", view = include("devops.urls")),
path(route = "hr/", view = include('human_resources.urls')), path(route = "/hr", view = include('human_resources.urls')),
path(route = "itam/", view = include("itam.urls_api")), path(route = "/itam", view = include("itam.urls_api")),
path(route = "itim/", view = include("itim.urls_api")), path(route = "/itim", view = include("itim.urls_api")),
path(route = "project_management/", view = include("project_management.urls_api")), path(route = "/project_management", view = include("project_management.urls_api")),
path(route = "settings/", view = include("settings.urls_api")), path(route = "/settings", view = include("settings.urls_api")),
path(route = 'public/', view = include('api.urls_public')), path(route = '/public', view = include('api.urls_public')),
] ]

View File

@ -19,16 +19,16 @@ router.register(
basename = '_api_v2_assistance_home' basename = '_api_v2_assistance_home'
) )
router.register( router.register(
prefix = 'knowledge_base', viewset = knowledge_base_v2.ViewSet, prefix = '/knowledge_base', viewset = knowledge_base_v2.ViewSet,
basename = '_api_knowledgebase' basename = '_api_knowledgebase'
) )
router.register( router.register(
prefix = '(?P<model>.+)/(?P<model_pk>[0-9]+)/knowledge_base', prefix = '/(?P<model>.+)/(?P<model_pk>[0-9]+)/knowledge_base',
viewset = model_knowledge_base_article.ViewSet, viewset = model_knowledge_base_article.ViewSet,
basename = '_api_v2_model_kb' basename = '_api_v2_model_kb'
) )
router.register( router.register(
prefix = 'ticket/request', viewset = request_ticket_v2.ViewSet, prefix = '/ticket/request', viewset = request_ticket_v2.ViewSet,
basename = '_api_v2_ticket_request' basename = '_api_v2_ticket_request'
) )

View File

@ -20,6 +20,7 @@ import django.db.models.options as options
options.DEFAULT_NAMES = (*options.DEFAULT_NAMES, 'sub_model_type', 'itam_sub_model_type') options.DEFAULT_NAMES = (*options.DEFAULT_NAMES, 'sub_model_type', 'itam_sub_model_type')
APPEND_SLASH = False
AUTH_USER_MODEL = 'auth.User' AUTH_USER_MODEL = 'auth.User'
# Build paths inside the project like this: BASE_DIR / 'subdir'. # Build paths inside the project like this: BASE_DIR / 'subdir'.

View File

@ -4,14 +4,14 @@ from django.contrib.auth import views as auth_views
from django.views.static import serve from django.views.static import serve
from django.urls import include, path, re_path from django.urls import include, path, re_path
from rest_framework import urls
urlpatterns = [ urlpatterns = [
path('admin/', admin.site.urls, name='_administration'), path('admin', admin.site.urls, name='_administration'),
path('account/password_change/', auth_views.PasswordChangeView.as_view(template_name="password_change.html.j2"), name="change_password"), path('account/password_change', auth_views.PasswordChangeView.as_view(template_name="password_change.html.j2"), name="change_password"),
path("account/", include("django.contrib.auth.urls")), path("account", include("django.contrib.auth.urls")),
re_path(r'^static/(?P<path>.*)$', serve,{'document_root': settings.STATIC_ROOT}), re_path(r'^static/(?P<path>.*)$', serve,{'document_root': settings.STATIC_ROOT}),
@ -30,15 +30,16 @@ if settings.API_ENABLED:
urlpatterns += [ urlpatterns += [
path("api/", include("api.urls", namespace = 'v1')), path("api", include("api.urls", namespace = 'v1')),
path("api/v2/", include("api.urls_v2", namespace = 'v2')), path("api/v2", include("api.urls_v2", namespace = 'v2')),
] ]
urlpatterns += [ urlpatterns += [
path('api/v2/auth/', include('rest_framework.urls')), path('api/v2/auth/login', auth_views.LoginView.as_view(template_name='rest_framework/login.html'), name='login'),
path('api/v2/auth/logout', auth_views.LogoutView.as_view(), name='logout'),
] ]

View File

@ -18,15 +18,15 @@ router.register(
basename = '_api_v2_config_management_home' basename = '_api_v2_config_management_home'
) )
router.register( router.register(
prefix = 'group', viewset = config_group_v2.ViewSet, prefix = '/group', viewset = config_group_v2.ViewSet,
basename = '_api_configgroups' basename = '_api_configgroups'
) )
router.register( router.register(
prefix = 'group/(?P<parent_group>[0-9]+)/child_group', viewset = config_group_v2.ViewSet, prefix = '/group/(?P<parent_group>[0-9]+)/child_group', viewset = config_group_v2.ViewSet,
basename = '_api_configgroups_child' basename = '_api_configgroups_child'
) )
router.register( router.register(
prefix = 'group/(?P<config_group_id>[0-9]+)/software', prefix = '/group/(?P<config_group_id>[0-9]+)/software',
viewset = config_group_software_v2.ViewSet, viewset = config_group_software_v2.ViewSet,
basename = '_api_configgroupsoftware' basename = '_api_configgroupsoftware'
) )

View File

@ -41,59 +41,59 @@ router: DefaultRouter = DefaultRouter(trailing_slash=False)
router.register( router.register(
'history', audit_history.NoDocsViewSet, '/history', audit_history.NoDocsViewSet,
basename = '_api_centurionaudit' basename = '_api_centurionaudit'
) )
router.register( router.register(
prefix=f'ticket', viewset = ticket.NoDocsViewSet, prefix=f'/ticket', viewset = ticket.NoDocsViewSet,
feature_flag = '2025-00006', basename = '_api_ticketbase' feature_flag = '2025-00006', basename = '_api_ticketbase'
) )
router.register( router.register(
prefix=f'ticket/(?P<ticket_type>[{ticket_type_names}]+)', viewset = ticket.ViewSet, prefix=f'/ticket/(?P<ticket_type>[{ticket_type_names}]+)', viewset = ticket.ViewSet,
feature_flag = '2025-00006', basename = '_api_ticketbase_sub' feature_flag = '2025-00006', basename = '_api_ticketbase_sub'
) )
router.register( router.register(
prefix = 'ticket/(?P<ticket_id>[0-9]+)/comment', viewset = ticket_comment.NoDocsViewSet, prefix = '/ticket/(?P<ticket_id>[0-9]+)/comment', viewset = ticket_comment.NoDocsViewSet,
feature_flag = '2025-00006', basename = '_api_ticket_comment_base' feature_flag = '2025-00006', basename = '_api_ticket_comment_base'
) )
router.register( router.register(
prefix = 'ticket/(?P<ticket_id>[0-9]+)/comment/(?P<parent_id>[0-9]+)/threads', prefix = '/ticket/(?P<ticket_id>[0-9]+)/comment/(?P<parent_id>[0-9]+)/threads',
viewset = ticket_comment.ViewSet, viewset = ticket_comment.ViewSet,
feature_flag = '2025-00006', basename = '_api_ticket_comment_base_thread' feature_flag = '2025-00006', basename = '_api_ticket_comment_base_thread'
) )
router.register( router.register(
prefix = 'ticket/(?P<ticket_id>[0-9]+)/comments', viewset = ticket_comment_depreciated.ViewSet, prefix = '/ticket/(?P<ticket_id>[0-9]+)/comments', viewset = ticket_comment_depreciated.ViewSet,
basename = '_api_v2_ticket_comment' basename = '_api_v2_ticket_comment'
) )
router.register( router.register(
prefix = 'ticket/(?P<ticket_id>[0-9]+)/comments/(?P<parent_id>[0-9]+)/threads', prefix = '/ticket/(?P<ticket_id>[0-9]+)/comments/(?P<parent_id>[0-9]+)/threads',
viewset = ticket_comment_depreciated.ViewSet, viewset = ticket_comment_depreciated.ViewSet,
basename = '_api_v2_ticket_comment_threads' basename = '_api_v2_ticket_comment_threads'
) )
router.register( router.register(
prefix = 'ticket/(?P<ticket_id>[0-9]+)/linked_item', viewset = ticket_linked_item.ViewSet, prefix = '/ticket/(?P<ticket_id>[0-9]+)/linked_item', viewset = ticket_linked_item.ViewSet,
basename = '_api_v2_ticket_linked_item' basename = '_api_v2_ticket_linked_item'
) )
router.register( router.register(
prefix = 'ticket/(?P<ticket_id>[0-9]+)/related_ticket', viewset = related_ticket.ViewSet, prefix = '/ticket/(?P<ticket_id>[0-9]+)/related_ticket', viewset = related_ticket.ViewSet,
basename = '_api_v2_ticket_related' basename = '_api_v2_ticket_related'
) )
router.register( router.register(
prefix=f'ticket/(?P<ticket_id>[0-9]+)/(?P<ticket_comment_model>[{ticket_comment_names}]+)', prefix=f'/ticket/(?P<ticket_id>[0-9]+)/(?P<ticket_comment_model>[{ticket_comment_names}]+)',
viewset = ticket_comment.ViewSet, viewset = ticket_comment.ViewSet,
feature_flag = '2025-00006', basename = '_api_ticket_comment_base_sub' feature_flag = '2025-00006', basename = '_api_ticket_comment_base_sub'
) )
router.register( router.register(
prefix=f'ticket/(?P<ticket_id>[0-9]+)/(?P<ticket_comment_model>[{ticket_comment_names} \ prefix=f'/ticket/(?P<ticket_id>[0-9]+)/(?P<ticket_comment_model>[{ticket_comment_names} \
]+)/(?P<parent_id>[0-9]+)/threads', ]+)/(?P<parent_id>[0-9]+)/threads',
viewset = ticket_comment.ViewSet, viewset = ticket_comment.ViewSet,
feature_flag = '2025-00006', basename = '_api_ticket_comment_base_sub_thread' feature_flag = '2025-00006', basename = '_api_ticket_comment_base_sub_thread'
) )
router.register( router.register(
prefix = '(?P<item_class>[a-z_]+)/(?P<item_id>[0-9]+)/item_ticket', prefix = '/(?P<item_class>[a-z_]+)/(?P<item_id>[0-9]+)/item_ticket',
viewset = ticket_linked_item.ViewSet, viewset = ticket_linked_item.ViewSet,
basename = '_api_v2_item_tickets' basename = '_api_v2_item_tickets'
) )

View File

@ -13,21 +13,21 @@ app_name = "devops"
router = DefaultRouter(trailing_slash=False) router = DefaultRouter(trailing_slash=False)
router.register( router.register(
prefix = 'feature_flag', viewset = feature_flag.ViewSet, prefix = '/feature_flag', viewset = feature_flag.ViewSet,
basename = '_api_featureflag' basename = '_api_featureflag'
) )
router.register( router.register(
prefix = r'git_repository(?:/(?P<model_name>gitlab|github))?', prefix = r'/git_repository(?:/(?P<model_name>gitlab|github))?',
viewset = git_repository.ViewSet, viewset = git_repository.ViewSet,
feature_flag = '2025-00001', basename = '_api_gitrepository' feature_flag = '2025-00001', basename = '_api_gitrepository'
) )
router.register( router.register(
prefix = r'(?P<model_name>githubrepository|gitlabrepository)', prefix = r'/(?P<model_name>githubrepository|gitlabrepository)',
viewset = git_repository.ViewSet, viewset = git_repository.ViewSet,
feature_flag = '2025-00001', basename = '_api_gitrepository_sub' feature_flag = '2025-00001', basename = '_api_gitrepository_sub'
) )
router.register( router.register(
prefix = 'git_group', viewset = git_group.ViewSet, prefix = '/git_group', viewset = git_group.ViewSet,
feature_flag = '2025-00001', basename = '_api_gitgroup' feature_flag = '2025-00001', basename = '_api_gitgroup'
) )

View File

@ -11,8 +11,8 @@ app_name = "devops"
router = SimpleRouter(trailing_slash=False) router = SimpleRouter(trailing_slash=False)
router.register('flags', feature_flag_endpoints.Index, basename='_api_v2_flags') router.register('/flags', feature_flag_endpoints.Index, basename='_api_v2_flags')
router.register('(?P<organization_id>[0-9]+)/flags/(?P<software_id>[0-9]+)', public_feature_flag.ViewSet, basename='_api_checkin') router.register('/(?P<organization_id>[0-9]+)/flags/(?P<software_id>[0-9]+)', public_feature_flag.ViewSet, basename='_api_checkin')
urlpatterns = router.urls urlpatterns = router.urls

View File

@ -34,57 +34,57 @@ router.register(
basename = '_api_v2_itam_home' basename = '_api_v2_itam_home'
) )
router.register( router.register(
prefix = '(?P<model_name>[itamassetbase]+)', viewset = asset.ViewSet, prefix = '/(?P<model_name>[itamassetbase]+)', viewset = asset.ViewSet,
feature_flag = '2025-00007', basename = '_api_itamassetbase' feature_flag = '2025-00007', basename = '_api_itamassetbase'
) )
router.register( router.register(
prefix = 'device', viewset = device.ViewSet, prefix = '/device', viewset = device.ViewSet,
basename = '_api_device' basename = '_api_device'
) )
router.register( router.register(
prefix = 'device/(?P<device_id>[0-9]+)/operating_system', prefix = '/device/(?P<device_id>[0-9]+)/operating_system',
viewset = device_operating_system.ViewSet, viewset = device_operating_system.ViewSet,
basename = '_api_deviceoperatingsystem') basename = '_api_deviceoperatingsystem')
router.register( router.register(
prefix = 'device/(?P<device_id>[0-9]+)/software', viewset = device_software_v2.ViewSet, prefix = '/device/(?P<device_id>[0-9]+)/software', viewset = device_software_v2.ViewSet,
basename = '_api_devicesoftware' basename = '_api_devicesoftware'
) )
router.register( router.register(
prefix = 'device/(?P<device_id>[0-9]+)/service', viewset = service_device_v2.ViewSet, prefix = '/device/(?P<device_id>[0-9]+)/service', viewset = service_device_v2.ViewSet,
basename = '_api_v2_service_device' basename = '_api_v2_service_device'
) )
router.register( router.register(
prefix = 'inventory', viewset = inventory.ViewSet, prefix = '/inventory', viewset = inventory.ViewSet,
basename = '_api_v2_inventory' basename = '_api_v2_inventory'
) )
router.register( router.register(
prefix = 'operating_system', viewset = operating_system_v2.ViewSet, prefix = '/operating_system', viewset = operating_system_v2.ViewSet,
basename = '_api_operatingsystem' basename = '_api_operatingsystem'
) )
router.register( router.register(
prefix = 'operating_system/(?P<operating_system_id>[0-9]+)/installs', prefix = '/operating_system/(?P<operating_system_id>[0-9]+)/installs',
viewset = device_operating_system.ViewSet, viewset = device_operating_system.ViewSet,
basename = '_api_v2_operating_system_installs' basename = '_api_v2_operating_system_installs'
) )
router.register( router.register(
prefix = 'operating_system/(?P<operating_system_id>[0-9]+)/version', prefix = '/operating_system/(?P<operating_system_id>[0-9]+)/version',
viewset = operating_system_version_v2.ViewSet, viewset = operating_system_version_v2.ViewSet,
basename = '_api_operatingsystemversion' basename = '_api_operatingsystemversion'
) )
router.register( router.register(
prefix = 'software', viewset = software_v2.ViewSet, prefix = '/software', viewset = software_v2.ViewSet,
basename = '_api_software' basename = '_api_software'
) )
router.register( router.register(
prefix = 'software/(?P<software_id>[0-9]+)/installs', viewset = device_software_v2.ViewSet, prefix = '/software/(?P<software_id>[0-9]+)/installs', viewset = device_software_v2.ViewSet,
basename = '_api_v2_software_installs' basename = '_api_v2_software_installs'
) )
router.register( router.register(
prefix = 'software/(?P<software_id>[0-9]+)/version', viewset = software_version_v2.ViewSet, prefix = '/software/(?P<software_id>[0-9]+)/version', viewset = software_version_v2.ViewSet,
basename = '_api_softwareversion' basename = '_api_softwareversion'
) )
router.register( router.register(
prefix = 'software/(?P<software_id>[0-9]+)/feature_flag', prefix = '/software/(?P<software_id>[0-9]+)/feature_flag',
viewset = software_enable_feature_flag.ViewSet, viewset = software_enable_feature_flag.ViewSet,
basename = '_api_softwareenablefeatureflag' basename = '_api_softwareenablefeatureflag'
) )

View File

@ -23,27 +23,27 @@ router.register(
basename = '_api_v2_itim_home' basename = '_api_v2_itim_home'
) )
router.register( router.register(
prefix = 'ticket/change', viewset = change.ViewSet, prefix = '/ticket/change', viewset = change.ViewSet,
basename = '_api_v2_ticket_change' basename = '_api_v2_ticket_change'
) )
router.register( router.register(
prefix = 'cluster', viewset = cluster_v2.ViewSet, prefix = '/cluster', viewset = cluster_v2.ViewSet,
basename = '_api_cluster' basename = '_api_cluster'
) )
router.register( router.register(
prefix = 'cluster/(?P<cluster_id>[0-9]+)/service', viewset = service_cluster.ViewSet, prefix = '/cluster/(?P<cluster_id>[0-9]+)/service', viewset = service_cluster.ViewSet,
basename = '_api_v2_service_cluster' basename = '_api_v2_service_cluster'
) )
router.register( router.register(
prefix = 'ticket/incident', viewset = incident.ViewSet, prefix = '/ticket/incident', viewset = incident.ViewSet,
basename = '_api_v2_ticket_incident' basename = '_api_v2_ticket_incident'
) )
router.register( router.register(
prefix = 'ticket/problem', viewset = problem.ViewSet, prefix = '/ticket/problem', viewset = problem.ViewSet,
basename = '_api_v2_ticket_problem' basename = '_api_v2_ticket_problem'
) )
router.register( router.register(
prefix = 'service', viewset = service.ViewSet, prefix = '/service', viewset = service.ViewSet,
basename = '_api_service' basename = '_api_service'
) )

View File

@ -20,16 +20,16 @@ router.register(
basename = '_api_v2_project_management_home' basename = '_api_v2_project_management_home'
) )
router.register( router.register(
prefix = 'project', viewset = project.ViewSet, prefix = '/project', viewset = project.ViewSet,
basename = '_api_project' basename = '_api_project'
) )
router.register( router.register(
prefix = 'project/(?P<project_id>[0-9]+)/milestone', prefix = '/project/(?P<project_id>[0-9]+)/milestone',
viewset = project_milestone.ViewSet, viewset = project_milestone.ViewSet,
basename = '_api_projectmilestone' basename = '_api_projectmilestone'
) )
router.register( router.register(
prefix = 'project/(?P<project_id>[0-9]+)/project_task', prefix = '/project/(?P<project_id>[0-9]+)/project_task',
viewset = project_task.ViewSet, viewset = project_task.ViewSet,
basename = '_api_v2_ticket_project_task' basename = '_api_v2_ticket_project_task'
) )

View File

@ -52,70 +52,70 @@ router.register(
basename = '_api_v2_settings_home' basename = '_api_v2_settings_home'
) )
router.register( router.register(
prefix = 'app_settings', viewset = app_settings.ViewSet, prefix = '/app_settings', viewset = app_settings.ViewSet,
basename = '_api_appsettings' basename = '_api_appsettings'
) )
router.register( router.register(
prefix = 'celery_log', viewset = celery_log_v2.ViewSet, prefix = '/celery_log', viewset = celery_log_v2.ViewSet,
basename = '_api_v2_celery_log' basename = '_api_v2_celery_log'
) )
router.register( router.register(
prefix = 'cluster_type', viewset = cluster_type_v2.ViewSet, prefix = '/cluster_type', viewset = cluster_type_v2.ViewSet,
basename = '_api_clustertype' basename = '_api_clustertype'
) )
router.register( router.register(
prefix = 'device_model', viewset = device_model.ViewSet, prefix = '/device_model', viewset = device_model.ViewSet,
basename = '_api_devicemodel' basename = '_api_devicemodel'
) )
router.register( router.register(
prefix = 'device_type', viewset = device_type.ViewSet, prefix = '/device_type', viewset = device_type.ViewSet,
basename = '_api_devicetype' basename = '_api_devicetype'
) )
router.register( router.register(
prefix = 'external_link', viewset = external_link.ViewSet, prefix = '/external_link', viewset = external_link.ViewSet,
basename = '_api_externallink' basename = '_api_externallink'
) )
router.register( router.register(
prefix = 'knowledge_base_category', prefix = '/knowledge_base_category',
viewset = knowledge_base_category_v2.ViewSet, viewset = knowledge_base_category_v2.ViewSet,
basename = '_api_knowledgebasecategory' basename = '_api_knowledgebasecategory'
) )
router.register( router.register(
prefix = 'manufacturer', viewset = manufacturer_v2.ViewSet, prefix = '/manufacturer', viewset = manufacturer_v2.ViewSet,
basename = '_api_manufacturer' basename = '_api_manufacturer'
) )
router.register( router.register(
prefix = 'port', viewset = port_v2.ViewSet, prefix = '/port', viewset = port_v2.ViewSet,
basename = '_api_port' basename = '_api_port'
) )
router.register( router.register(
prefix = 'project_state', prefix = '/project_state',
viewset = project_state.ViewSet, viewset = project_state.ViewSet,
basename = '_api_projectstate' basename = '_api_projectstate'
) )
router.register( router.register(
prefix = 'project_type', viewset = project_type.ViewSet, prefix = '/project_type', viewset = project_type.ViewSet,
basename = '_api_projecttype' basename = '_api_projecttype'
) )
router.register( router.register(
prefix = 'software_category', viewset = software_category_v2.ViewSet, prefix = '/software_category', viewset = software_category_v2.ViewSet,
basename = '_api_softwarecategory' basename = '_api_softwarecategory'
) )
router.register( router.register(
prefix = 'ticket_category', prefix = '/ticket_category',
viewset = ticket_category.ViewSet, basename = '_api_ticketcategory' viewset = ticket_category.ViewSet, basename = '_api_ticketcategory'
) )
router.register( router.register(
prefix = 'ticket_comment_category', prefix = '/ticket_comment_category',
viewset = ticket_comment_category.ViewSet, viewset = ticket_comment_category.ViewSet,
basename = '_api_ticketcommentcategory' basename = '_api_ticketcommentcategory'
) )
router.register( router.register(
prefix = 'user_settings', viewset = user_settings.ViewSet, prefix = '/user_settings', viewset = user_settings.ViewSet,
basename = '_api_usersettings' basename = '_api_usersettings'
) )
router.register( router.register(
prefix = 'user_(?P<model_id>[0-9]+)/token', viewset = auth_token.ViewSet, prefix = '/user_(?P<model_id>[0-9]+)/token', viewset = auth_token.ViewSet,
basename = '_api_authtoken' basename = '_api_authtoken'
) )