Files
xujiang 386666660f
Some checks failed
部署后端服务 / 🚀 构建并部署 (push) Failing after 7m20s
feat: 重构CLAUDE.md文档体系,实现模块化轻量级设计
- 重构根目录CLAUDE.md为项目总览(60行精简版)
- 细化backend模块CLAUDE.md为开发指南
- 新增各子模块CLAUDE.md文件:
  - api/desc/ - API定义模块
  - internal/handler/ - 请求处理器
  - internal/logic/ - 业务逻辑层
  - internal/model/ - 数据模型层
  - internal/middleware/ - 中间件层
  - internal/svc/ - 服务上下文
  - configs/ - 配置目录
  - deploy/ - 部署配置
  - pkg/ - 公共库
  - scripts/ - 工具脚本
  - configs/sql/ - SQL脚本
- 修复PostgreSQL SSL配置参数
- 清理旧的backend-old目录

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-16 13:16:01 +08:00

1.3 KiB

Model层 - 数据模型

📋 目录结构

internal/model/
├── user.go           # 用户模型
├── photo.go          # 照片模型
├── category.go       # 分类模型
├── vars.go           # 模型变量
├── sql/              # SQL定义文件
│   ├── user.sql      # 用户表结构
│   ├── photo.sql     # 照片表结构
│   └── category.sql  # 分类表结构
└── *_gen.go          # 自动生成代码

🎯 模型职责

  • 数据定义: 数据库表结构
  • CRUD操作: 基础数据操作
  • 关联关系: 表间关系定义
  • 验证规则: 数据验证

🚀 开发流程

  1. 定义SQL: 在sql/目录创建表结构
  2. 生成模型: make generate-model
  3. 扩展方法: 在对应模型文件添加自定义方法

📊 表结构关系

User 1:N Photo (用户拥有多张照片)
Category 1:N Photo (分类包含多张照片)

🎯 文件说明

文件 用途 修改频率
user.sql 用户表定义
photo.sql 照片表定义
category.sql 分类表定义
*_gen.go 自动生成代码 不修改

🔄 生成命令

# 生成所有模型
make generate-model

# 生成单个模型
goctl model mysql ddl -src sql/user.sql -dir ./internal/model/