后端:apps/ai QualityWord(stage/slot/text/sort/enabled)+ migration;services.py quality_words/quality_suffix, 4 个 builder 接入(person/model_tryon/storyboard/video)无配置回落原写死值零回归;adminpanel CRUD + 审计。 前端:adminApi quality 系列;Admin 质量词页(按 stage 分组卡 + 编辑模式开关 + 行内增改删 chip)。 测试:adminpanel 23 + accounts 22 = 45 单测过(CRUD/权限/生成读配置+回落/停用词不取); 无头 e2e _admin-p4.mjs 4 断言过 + 0 console error + live 库零残留;tsc+build 绿。 注:apps.ai 3 个 image_edit 路由测试失败为进场前既有(已 stash 比对 HEAD 同样失败),非本 Phase 引入。 Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
29 lines
1.1 KiB
Python
29 lines
1.1 KiB
Python
from django.urls import path
|
|
|
|
from .views import (
|
|
admin_invitations,
|
|
admin_quality_word_detail,
|
|
admin_quality_words,
|
|
admin_revoke_invitation,
|
|
admin_team_detail,
|
|
admin_team_toggle,
|
|
admin_teams,
|
|
admin_user_reset_password,
|
|
admin_user_toggle,
|
|
admin_users,
|
|
)
|
|
|
|
|
|
urlpatterns = [
|
|
path("invitations/", admin_invitations, name="admin-invitations"),
|
|
path("invitations/<uuid:invite_id>/revoke/", admin_revoke_invitation, name="admin-invitation-revoke"),
|
|
path("teams/", admin_teams, name="admin-teams"),
|
|
path("teams/<uuid:team_id>/", admin_team_detail, name="admin-team-detail"),
|
|
path("teams/<uuid:team_id>/toggle/", admin_team_toggle, name="admin-team-toggle"),
|
|
path("users/", admin_users, name="admin-users"),
|
|
path("users/<uuid:user_id>/toggle/", admin_user_toggle, name="admin-user-toggle"),
|
|
path("users/<uuid:user_id>/reset-password/", admin_user_reset_password, name="admin-user-reset-password"),
|
|
path("quality-words/", admin_quality_words, name="admin-quality-words"),
|
|
path("quality-words/<uuid:word_id>/", admin_quality_word_detail, name="admin-quality-word-detail"),
|
|
]
|