From adc7fb0d07f58ce829f7db6d837a3659dfc79744 Mon Sep 17 00:00:00 2001 From: kuaifan Date: Mon, 1 Jun 2026 09:52:27 +0000 Subject: [PATCH] =?UTF-8?q?docs(claude):=20=E8=A1=A5=E5=85=85=E9=9D=9E=20R?= =?UTF-8?q?EST=20=E8=B7=AF=E7=94=B1=E6=9C=80=E5=A4=9A=E4=B8=A4=E6=AE=B5?= =?UTF-8?q?=E7=9A=84=E9=99=90=E5=88=B6=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Claude Opus 4.8 (1M context) --- CLAUDE.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index 8a1392975..0b384e749 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -28,7 +28,8 @@ Laravel 8 (LaravelS/Swoole) + Vue 2 (Vite) + Electron。开源任务/项目管 ### 后端 -- **非 REST 路由**:所有 API 通过 `Route::any('api/{resource}/{method}')` 路由到 `InvokeController`,URL 段映射为控制器方法(如 `api/project/lists` → `lists()`,带 action 则用双下划线:`api/project/invite/join` → `invite__join()`) +- **非 REST 路由**:API 控制器(继承 `InvokeController`)在 `routes/web.php` 按资源注册路由,URL 段映射为控制器方法(如 `api/project/lists` → `lists()`,带 action 则用双下划线:`api/project/invite/join` → `invite__join()`) + - 路由最多两段:方法名最多一个双下划线(`method__action`),不支持 `method__action__xxx`(无对应路由,访问 404) - **响应格式**:统一使用 `Base::retSuccess($msg, $data)` / `Base::retError($msg)`,返回 `{"ret": 1, "msg": "...", "data": {...}}`——不要用 `response()->json()` - 业务异常通过 `App\Exceptions\ApiException` 抛出,不要用通用 Exception - 模型继承 `AbstractModel`,使用 `Model::createInstance($params)` 创建——不要用 `new Model()` 或 `Model::create()`