From e9b32173ad52b84af0e67288a99ec565f20650b6 Mon Sep 17 00:00:00 2001 From: hodasemi Date: Wed, 30 Aug 2023 17:37:39 +0200 Subject: [PATCH] Get basic path handling to work properly --- {templates => resources/css}/index.css | 0 resources/{ => images}/petersilie_banner.png | Bin resources/js/example.js | 0 {templates => resources/templates}/index.html | 4 ++-- src/main.rs | 19 ++++++++++-------- 5 files changed, 13 insertions(+), 10 deletions(-) rename {templates => resources/css}/index.css (100%) rename resources/{ => images}/petersilie_banner.png (100%) create mode 100644 resources/js/example.js rename {templates => resources/templates}/index.html (81%) diff --git a/templates/index.css b/resources/css/index.css similarity index 100% rename from templates/index.css rename to resources/css/index.css diff --git a/resources/petersilie_banner.png b/resources/images/petersilie_banner.png similarity index 100% rename from resources/petersilie_banner.png rename to resources/images/petersilie_banner.png diff --git a/resources/js/example.js b/resources/js/example.js new file mode 100644 index 0000000..e69de29 diff --git a/templates/index.html b/resources/templates/index.html similarity index 81% rename from templates/index.html rename to resources/templates/index.html index a22f3fe..88f4ea8 100644 --- a/templates/index.html +++ b/resources/templates/index.html @@ -3,12 +3,12 @@ Petersilie Shop - +
- +

Header info 1

Header info 2

Header info 3

diff --git a/src/main.rs b/src/main.rs index b20450e..d4875f6 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,6 +1,4 @@ -use std::path::PathBuf; - -use actix_files::NamedFile; +use actix_files::Files; use actix_web::middleware::Logger; use actix_web::{get, web::Data, App, HttpRequest, HttpResponse, HttpServer, Responder, Result}; use env_logger::Env; @@ -14,7 +12,7 @@ struct AppData { async fn index(data: Data, req: HttpRequest) -> impl Responder { let mut ctx = Context::new(); - let rendered = data.tmpl.render("templates/index.html", &ctx).unwrap(); + let rendered = data.tmpl.render("index.html", &ctx).unwrap(); HttpResponse::Ok().body(rendered) } @@ -22,17 +20,22 @@ async fn index(data: Data, req: HttpRequest) -> impl Responder { async fn main() -> std::io::Result<()> { env_logger::init_from_env( Env::default() - .default_filter_or("info") + // .default_filter_or("info") .default_filter_or("debug"), ); HttpServer::new(|| { App::new() .service(index) - .service(actix_files::Files::new("/resources", ".").show_files_listing()) - .service(actix_files::Files::new("/templates", ".").show_files_listing()) + .service(Files::new("/images", "resources/images/").show_files_listing()) + .service(Files::new("/css", "resources/css").show_files_listing()) + .service(Files::new("/js", "resources/js").show_files_listing()) .app_data(Data::new(AppData { - tmpl: Tera::new("/templates/**/*").unwrap(), + tmpl: Tera::new(concat!( + env!("CARGO_MANIFEST_DIR"), + "/resources/templates/**/*" + )) + .unwrap(), })) .wrap(Logger::default()) })