Architecture d'un projet Runique

Macros Rust

Runique fournit un ensemble de macros pour simplifier le développement.

Macros de contexte

MacroDescriptionExemple
context!Créer un contexte Teracontext!("title" => "Page")
context_update!Ajouter au contexte d'une Requestcontext_update!(request => { "key" => value })

Macros flash messages

MacroDescriptionExemple
success!Message de succès (session)success!(request.notices => "OK !")
error!Message d'erreur (session)error!(request.notices => "Erreur")
info!Message info (session)info!(request.notices => "Info")
warning!Avertissement (session)warning!(request.notices => "Attention")
flash_now!Message immédiat (sans session)flash_now!(error => "Erreurs")

Macros de routage

MacroDescriptionExemple
urlpatterns!Définir des routes avec nomsurlpatterns!("/" => view!{...}, name = "index")
view!Handler pour toutes méthodes HTTPview!{ GET => handler, POST => handler2 }
impl_objects!Manager Django-like pour SeaORMimpl_objects!(Entity)

Macros d'erreur

MacroDescription
impl_from_error!Génère From<Error> pour AppError