核心功能: - AIAgent 模型:AI 代理身份管理 - AIOperationLog: AI 操作日志记录 - AITask: AI 异步任务系统 - AIWebhook: AI webhook 订阅 API 端点: - POST /api/agents/auth/ - AI 代理认证 - GET/POST /api/agents/ - 代理管理 - GET /api/agent-logs/ - 操作日志查询 - GET/POST /api/agent-tasks/ - 任务管理 - GET/POST /api/agent-webhooks/ - Webhook 管理 - POST /api/batch/ - 批量操作 预置 AI 代理: - content-moderator-ai: 内容审核 AI - content-generator-ai: 内容生成 AI - service-curator-ai: 服务推荐 AI - analytics-ai: 数据分析 AI - admin-ai: 管理员 AI 文档: - AI_AGENT.md: AI-First 设计文档 - init_agents.py: AI 代理初始化脚本 测试: - 认证系统测试通过 - JWT token 生成正常 - 权限系统工作正常
43 lines
1.9 KiB
Python
43 lines
1.9 KiB
Python
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)
|