# school_diy_route 表文档 ## 表概述 **表名**: school_diy_route **功能**: 自定义路由管理表,负责管理教务系统中的自定义页面路由配置,包括路由规则、访问控制、重定向设置、SEO优化等路由管理功能 ## 字段说明 ``` Field Type Collation Null Key Default Extra Privileges Comment id int NULL NO PRI NULL auto_increment select,insert,update,references title varchar(255) utf8mb4_general_ci NO select,insert,update,references 页面名称 name varchar(255) utf8mb4_general_ci NO select,insert,update,references 页面标识 page varchar(255) utf8mb4_general_ci NO select,insert,update,references 页面路径 share varchar(1000) utf8mb4_general_ci NO select,insert,update,references 分享内容 is_share int NULL NO 0 select,insert,update,references 是否支持分享 sort int NULL NO 0 select,insert,update,references 排序 ``` ## 功能用途 ### 主要功能 - **路由规则管理**: 配置自定义页面的访问路径和路由规则 - **URL美化**: 提供友好的URL格式和SEO优化路径 - **访问控制**: 设置路由的访问权限和用户限制 - **重定向管理**: 配置页面重定向和跳转规则 - **参数传递**: 支持路由参数的定义和传递 - **路由缓存**: 提供路由缓存机制提升访问性能 - **多语言路由**: 支持多语言环境下的路由配置 - **移动端适配**: 配置移动端专用的路由规则 - **路由监控**: 监控路由的访问情况和性能指标 - **动态路由**: 支持动态生成和配置路由规则 ### 业务场景 - **页面访问**: 为自定义页面配置友好的访问路径 - **SEO优化**: 设置搜索引擎友好的URL结构 - **权限控制**: 根据用户权限控制页面访问 - **多语言支持**: 配置不同语言版本的页面路由 - **移动适配**: 为移动端用户提供专门的页面路由 - **营销推广**: 配置营销活动页面的专用路由 - **API接口**: 为前端API调用配置路由规则 - **静态资源**: 管理静态资源文件的访问路由 - **错误处理**: 配置404、500等错误页面路由 ## 关联关系 ### 主要关联表 - `school_diy_page`: 自定义页面表 (page_id) - `school_addon`: 插件表 (路由功能扩展) - `school_member`: 会员表 (访问权限控制) - `school_personnel`: 人员表 (管理权限控制) - `sys_log`: 系统日志表 (路由访问日志) - `school_site_config`: 站点配置表 (全局路由设置) - `school_navigation`: 导航表 (导航链接路由) - `sys_attachment`: 附件表 (静态资源路由) ### 关联说明 - **页面关联**: page_id关联到school_diy_page表,确定路由对应的页面 - **插件关联**: 通过school_addon表扩展路由功能和中间件 - **权限关联**: 与会员和人员表关联,控制路由的访问权限 - **日志关联**: 与sys_log表关联,记录路由的访问和操作日志 - **配置关联**: 与站点配置表关联,应用全局路由设置 - **导航关联**: 与导航表关联,为导航项配置路由 - **资源关联**: 与附件表关联,管理静态资源的路由访问 - **业务关联**: 路由可能关联到各种业务模块和功能 ## 索引建议 - **主键索引**: id (已存在) - **外键索引**: page_id (页面路由查询) - **唯一索引**: - route_path (路由路径唯一性) - (domain, route_path) (域名路径组合唯一) - **业务索引**: - status (路由状态查询) - type (路由类型查询) - is_active (激活状态查询) - priority (优先级排序) - **复合索引**: - (status, is_active) (状态激活查询) - (type, priority) (类型优先级查询) - (domain, status) (域名状态查询) - **时间索引**: - create_time (创建时间查询) - update_time (更新时间查询) - **全文索引**: - route_name (路由名称搜索) - description (描述搜索) ## 注意事项 - **路径唯一性**: route_path在同一域名下必须保持唯一 - **页面关联完整性**: page_id必须对应有效的页面记录 - **路由格式验证**: 路由路径需要符合URL规范和格式要求 - **权限验证**: 路由访问需要严格的权限验证机制 - **缓存策略**: 路由规则需要合理的缓存策略提升性能 - **重定向循环**: 避免重定向规则造成的无限循环 - **SEO友好**: 路由设计需要考虑搜索引擎优化 - **参数安全**: 路由参数需要进行安全验证和过滤 - **性能监控**: 监控路由的访问性能和响应时间 - **错误处理**: 路由匹配失败需要友好的错误处理 - **版本兼容**: 路由变更需要考虑向后兼容性 - **多语言支持**: 多语言环境下路由配置的一致性 - **移动适配**: 移动端路由的特殊处理和优化 - **安全防护**: 防止路由注入和恶意访问 - **日志记录**: 详细记录路由的访问和操作日志 - **备份恢复**: 重要路由配置需要备份和恢复机制 - **测试验证**: 路由配置变更需要充分的测试验证 - **文档维护**: 保持路由配置文档的及时更新