Files

43 lines
1.9 KiB
Python
Raw Permalink Normal View History

from django.contrib import admin
from django.urls import path, include
from django.conf import settings
from django.conf.urls.static import static
from rest_framework.routers import DefaultRouter
from rest_framework_simplejwt.views import TokenObtainPairView, TokenRefreshView
from regions.views import RegionViewSet, ModeratorApplicationViewSet
from users.views import UserViewSet, UserRegistrationView
from content.views import ArticleViewSet, CommentViewSet, RatingViewSet
from services.views import FeaturedServiceViewSet
from agents.views import (
AIAgentViewSet, AIOperationLogViewSet, AITaskViewSet,
AIWebhookViewSet, batch_execute
)
router = DefaultRouter()
router.register(r'regions', RegionViewSet)
router.register(r'moderator-applications', ModeratorApplicationViewSet)
router.register(r'users', UserViewSet)
router.register(r'articles', ArticleViewSet)
router.register(r'comments', CommentViewSet)
router.register(r'ratings', RatingViewSet)
router.register(r'services', FeaturedServiceViewSet)
# AI 代理系统
router.register(r'agents', AIAgentViewSet, basename='agent')
router.register(r'agent-logs', AIOperationLogViewSet, basename='agent-log')
router.register(r'agent-tasks', AITaskViewSet, basename='agent-task')
router.register(r'agent-webhooks', AIWebhookViewSet, basename='agent-webhook')
urlpatterns = [
path('admin/', admin.site.urls),
path('api/token/', TokenObtainPairView.as_view(), name='token_obtain_pair'),
path('api/token/refresh/', TokenRefreshView.as_view(), name='token_refresh'),
path('api/register/', UserRegistrationView.as_view(), name='user_register'),
path('api/agents/auth/', AIAgentViewSet.as_view({'post': 'auth'}), name='agent-auth'),
path('api/batch/', batch_execute, name='batch-execute'),
path('api/', include(router.urls)),
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)