pub struct Templates { /* private fields */ }Implementations§
Source§impl Templates
impl Templates
Sourcepub fn new(project_templates_dir: Option<PathBuf>) -> Result<Arc<Self>>
pub fn new(project_templates_dir: Option<PathBuf>) -> Result<Arc<Self>>
Build the environment.
project_templates_dir = None → embedded templates only.
project_templates_dir = Some(path) → disk overrides win at
render time. Pass the value of RUSTIO_TEMPLATE_DIR (or your
own resolved path) here.
Phase 12/c-fix — when a disk root is supplied, the constructor
scans it once for overrides of embedded templates. Each match
is logged at INFO; an override that looks structurally
incomplete (no {% extends %}, no {% block %}, no <html>
tag) is logged at WARN so a one-line stub of admin/base.html
stops being a silent failure. Non-fatal: the override is still
served — the scan exists only to make the failure mode visible.
Sourcepub fn render<S: Serialize>(&self, name: &str, ctx: &S) -> Result<String>
pub fn render<S: Serialize>(&self, name: &str, ctx: &S) -> Result<String>
Render a template by name.
Sourcepub fn render_for_model<S: Serialize>(
&self,
model: &str,
name: &str,
ctx: &S,
) -> Result<String>
pub fn render_for_model<S: Serialize>( &self, model: &str, name: &str, ctx: &S, ) -> Result<String>
Render with a per-model override hook.
Tries admin/<model>/<page> first (where <page> is name
stripped of any leading admin/), falling back to name.
Phase 6a wires the API but no handler calls it yet — the
existing Phase 6a admin pages all call Self::render.
Auto Trait Implementations§
impl !Freeze for Templates
impl RefUnwindSafe for Templates
impl Send for Templates
impl Sync for Templates
impl Unpin for Templates
impl UnsafeUnpin for Templates
impl UnwindSafe for Templates
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
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>
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>
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 more