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)