* @Date: 2026-08-07 10:22:47 * @LastEditors: YwxApp * @LastEditTime: 2026-08-19 21:08:06 * @Description: * @FilePath: \ywxapp_dev\ywxapp\model\Help.php * @CustomString: Copyright (c) 2026 YwxApp */ declare(strict_types=1); namespace ywxapp\model; use ywxapp\model\BaseModel; use think\model\concern\SoftDelete; /** * 站点帮助 */ class CommonHelp extends BaseModel { use SoftDelete; protected function getOptions(): array { return [ 'strict' => false, 'autoWriteTimestamp' => 'int', 'createTime' => 'create_at', 'updateTime' => 'update_at', 'deleteTime' => 'delete_at', 'defaultSoftDelete' => 0, 'readonly' => ['id'], ]; } /** * 运行时自愈:确保 help 主表存在(install.sql 已含 category/view_count 等列,为事实源)。 */ public static function ensureSchema(): void { BaseModel::ensureTableFromInstall(BaseModel::currentPrefix(), 'common_help'); } /** * 模型初始化时自愈 help 表结构(category / view_count 等扩展列由 install.sql 统一提供)。 * 集中在此处,前后台读写共用同一模型,避免各自漏调自愈导致 1054 缺列。 */ protected function initialize() { parent::initialize(); self::ensureSchema(); } }