pub struct SimpleTemplateEngine { /* private fields */ }Expand description
简易模板引擎(对齐 PHP think\Template 的基本标签解析)
§支持的标签
| 标签 | 示例 | 说明 |
|---|---|---|
{$var} | {$name} | 变量插值 |
{$var.attr} | {$user.name} | 嵌套属性(对齐 PHP . 语法,array 模式) |
{$var|filter} | {$name|upper} | 过滤器 |
{$var|default=x} | {$name|default='N/A'} | 默认值 |
{$var?='x'} | 三元:真则输出 | |
{$var?:'x'} | 三元:假则输出 x | |
{$var??'x'} | null 合并 | |
{:func(args)} | {:date('Y')} | 函数调用 |
{//comment} | 单行注释 | |
{/*comment*/} | 块注释 | |
{literal}...{/literal} | 原文保留 |
Implementations§
Source§impl SimpleTemplateEngine
impl SimpleTemplateEngine
Sourcepub fn new(config: ViewConfig) -> SimpleTemplateEngine
pub fn new(config: ViewConfig) -> SimpleTemplateEngine
创建新引擎
Sourcepub fn register_function(
&self,
name: &str,
func: Arc<dyn Fn(&[Value]) -> Result<Value, ViewError> + Sync + Send>,
)
pub fn register_function( &self, name: &str, func: Arc<dyn Fn(&[Value]) -> Result<Value, ViewError> + Sync + Send>, )
注册自定义函数(对齐 PHP Template::extend 扩展机制)
Sourcepub fn parse_template_path(&self, template: &str) -> PathBuf
pub fn parse_template_path(&self, template: &str) -> PathBuf
解析模板路径(对齐 PHP parseTemplateFile)
PHP 规则:
- 含
@→ 跨应用调用app@template - 首字符
/→ 绝对路径 - 否则 →
view_path/template.view_suffix
Trait Implementations§
Source§impl TemplateEngine for SimpleTemplateEngine
impl TemplateEngine for SimpleTemplateEngine
Source§fn fetch(
&self,
template: &str,
data: &HashMap<String, Value>,
) -> Result<String, ViewError>
fn fetch( &self, template: &str, data: &HashMap<String, Value>, ) -> Result<String, ViewError>
渲染模板文件(对齐 PHP
fetch)Source§fn display(
&self,
content: &str,
data: &HashMap<String, Value>,
) -> Result<String, ViewError>
fn display( &self, content: &str, data: &HashMap<String, Value>, ) -> Result<String, ViewError>
渲染字符串内容(对齐 PHP
display)Source§fn set_config(&mut self, config: ViewConfig)
fn set_config(&mut self, config: ViewConfig)
设置配置(对齐 PHP
config)Auto Trait Implementations§
impl !Freeze for SimpleTemplateEngine
impl !RefUnwindSafe for SimpleTemplateEngine
impl !UnwindSafe for SimpleTemplateEngine
impl Send for SimpleTemplateEngine
impl Sync for SimpleTemplateEngine
impl Unpin for SimpleTemplateEngine
impl UnsafeUnpin for SimpleTemplateEngine
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.