# 文件级覆盖机制(app/ 覆盖 extend/base/) > 来源:框架内置(ulthon-) > 作用域:所有"框架默认文件 → 业务同名文件"的覆盖场景(视图模板、include 标签、`app_file_path()` 加载的 PHP/配置/模板) > 触发条件:需要替换框架内置视图/模板/跳转页/异常页/定时任务配置/CURD 模板/版本升级钩子时加载 ## 规则内容 ### 概述 Ulthon Admin 在"类继承覆盖"之外,还提供"文件级覆盖"能力:业务侧在 `app/` 下放置与 `extend/base/` 同路径、同名的文件,框架运行时会优先加载 app 版本。 该机制只对**特定类型**的文件生效,不是所有文件都支持。覆盖能力分三类: - 机制一:视图模板覆盖(最核心、最隐蔽,控制器 `fetch()` 自动生效) - 机制二:模板内 `{include}` 标签覆盖(与机制一同源) - 机制三:`app_file_path()` 辅助函数显式覆盖(需调用方主动使用) ### 机制一:视图模板覆盖 - 实现位置:`extend/think/view/driver/Think.php:160-257` 的 `parseTemplate()` 方法 - 不走 `app_file_path`,由视图驱动自身完成三级回退查找: 1. `app//view/