pub fn apply_layout(
content: &str,
config: &ViewConfig,
) -> Result<String, ViewError>Expand description
应用布局(对齐 PHP compiler() + parseLayout())
PHP 流程:
compiler()检查layout_on,如果开启则读取布局模板并替换{__CONTENT__}parseLayout()检查{layout}标签,如果存在且未被compiler()处理则应用
Rust 合并为单函数,按 PHP 顺序执行:
- 应用配置布局(
layout_on=true),处理{__NOLAYOUT__} - 解析
{layout}标签(对齐parseLayout())
§参数
content— 模板内容config— 视图配置
§返回
应用布局后的内容
§错误
- 如果
layout_on=true且布局文件不存在,返回ViewError::TemplateNotFound - 如果
{layout}标签指定的布局文件不存在,返回ViewError::TemplateNotFound