Files
yingqing/core/backend/apps/adminpanel/urls.py
T
seaislee1209andClaude Opus 4.8 4ce7e957d2 feat(admin): Phase 8 模型供应商管理 — provider/model CRUD + 启停 + 定价 + 设默认
后端:ModelConfig.is_default + migration;get_default_model 优先 is_default 否则回落最早 active(零回归);
adminpanel providers CRUD(api_key write-only 不回传)+ models CRUD(?provider/capability 筛)+ set-default(同 capability 清旧);
IsPlatformAdmin + 审计。
前端:adminApi providers/models/setDefault;Admin 模型供应商页(供应商表+模型表+启停+定价+设默认+供应商/模型弹窗)。
测试:adminpanel 51 单测过(api_key 隐藏+入库/CRUD/set-default 改 get_default_model);
apps.ai 仍仅 3 个进场前既有失败(零回归);无头 e2e _admin-p8.mjs 5 断言过 + 0 console error
(用一次性禁用 provider+model capability=export,无副作用,跑完删);tsc+build 绿。

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-19 22:45:14 +08:00

59 lines
2.7 KiB
Python

from django.urls import path
from .views import (
admin_asset_reviews,
admin_asset_reviews_poll,
admin_asset_reviews_submit,
admin_invitations,
admin_ledger_adjust,
admin_ledgers,
admin_model_detail,
admin_model_set_default,
admin_models,
admin_provider_detail,
admin_providers,
admin_quota_policies,
admin_quota_policy_detail,
admin_task_detail,
admin_task_retry,
admin_tasks,
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"),
path("asset-reviews/", admin_asset_reviews, name="admin-asset-reviews"),
path("asset-reviews/submit/", admin_asset_reviews_submit, name="admin-asset-reviews-submit"),
path("asset-reviews/poll/", admin_asset_reviews_poll, name="admin-asset-reviews-poll"),
path("tasks/", admin_tasks, name="admin-tasks"),
path("tasks/<uuid:task_id>/", admin_task_detail, name="admin-task-detail"),
path("tasks/<uuid:task_id>/retry/", admin_task_retry, name="admin-task-retry"),
path("ledgers/", admin_ledgers, name="admin-ledgers"),
path("ledgers/adjust/", admin_ledger_adjust, name="admin-ledger-adjust"),
path("quota-policies/", admin_quota_policies, name="admin-quota-policies"),
path("quota-policies/<uuid:policy_id>/", admin_quota_policy_detail, name="admin-quota-policy-detail"),
path("providers/", admin_providers, name="admin-providers"),
path("providers/<uuid:provider_id>/", admin_provider_detail, name="admin-provider-detail"),
path("models/", admin_models, name="admin-models"),
path("models/<uuid:model_id>/", admin_model_detail, name="admin-model-detail"),
path("models/<uuid:model_id>/set-default/", admin_model_set_default, name="admin-model-set-default"),
]