Files
geneagro_cms/doc/Architecture.md

61 lines
3.1 KiB
Markdown
Raw Permalink Normal View History

# GeneAgro CMS 架构与目录说明
总体概览
- 项目基于 PbootCMS 内核按“前台Home/后台Admin/接口API/公共Common/核心Core”五层组织。
- 入口文件:
- index.php前台入口。
- iotadmin.php后台入口。
- api.php接口入口。
- 初始化:入口文件加载 core/init.php完成常量定义、错误处理、自动加载、环境校验与会话初始化。
核心目录与职责
- apps/home前台控制器与模型负责页面展示与内容读取。
- apps/admin后台控制器、模型与视图用于系统配置、内容管理、会员管理等。
- apps/api接口层如需扩展或新增接口建议在此目录组织
- apps/common公共控制器AdminController、HomeController、ApiController、公共路由route.php与版本信息。
- core/basic框架基础能力Controller/Model/Db/Cache/Log/Config/Kernel/Response 等)。
- core/function通用函数库helper/handle/file
- core/log日志实现数据库与文本
- core/view模板视图与解析器。
- config项目级配置config.php、database.php、route.php
- template/default默认主题与静态资源Bootstrap/JS/CSS
- rewrite伪静态规则示例Apache/Nginx/IIS
加载与路由
- 自动加载core/basic/Basic.php::autoLoad。
- 支持框架类、应用类与命名空间类加载。
- 路由apps/common/route.php 定义系统主路由,包括:
- 后台admin/system、admin/content、admin/member。
- 前台sitemap。
- 接口api/list、api/content、api/about、api/search。
- 可在 config/route.php 中做项目级路由扩展或覆盖。
控制器与视图
- 基类core/basic/Controller.php。
- display/parser模板解析与输出支持 gzip 压缩与运行时统计。
- assign/getVar模板变量注入与获取。
- cache页面缓存可选
- log统一日志写入支持 db/text
- 视图引擎core/view/*Parser/View支持主题与变量替换。
会话与缓存
- 会话Basic::setSessionHandler默认文件存储支持 Memcache需安装扩展并配置
- 缓存core/cache/*Memcache 驱动可选(需启用扩展与配置)。
日志
- 文本日志core/log/LogText.php日志文件位于 log/ 下,按日归档。
- 数据库日志core/log/LogDb.php写入 ay_syslog 表字段level、event、ip、os、bs、user、time
- 控制器内通过 $this->log(...) 或 Controller::log(...) 写入。
文件与上传
- 文件/目录core/function/file.php 提供创建、检测、复制、列表、删除等工具函数。
- 上传upload() 支持格式校验、尺寸限制与水印(配合配置项使用)。
版本与配置覆盖
- 默认配置core/convention.php。
- 应用配置覆盖config/config.php 与 config/route.php。
- 版本apps/common/version.phpapp_version=3.2.5)。
扩展与集成
- core/extend二维码、Excel、腾讯云 COS、Ueditor 等扩展。
- core/weixin微信相关 SDK网页授权、模板消息、JS-SDK 等)。