diff --git a/examples/actix_example/src/main.rs b/examples/actix_example/src/main.rs index 7e2e734f..9a143be5 100644 --- a/examples/actix_example/src/main.rs +++ b/examples/actix_example/src/main.rs @@ -1,6 +1,3 @@ -// use actix_web::{get, post, web, App, HttpResponse, HttpServer, Responder}; -use std::sync::Arc; - use actix_files as fs; use actix_web::{ error, get, middleware, post, web, App, Error, HttpRequest, HttpResponse, @@ -22,10 +19,8 @@ const DEFAULT_POSTS_PER_PAGE: usize = 25; #[derive(Debug, Clone)] struct AppState { templates: tera::Tera, - conn: Arc, + conn: DatabaseConnection, } -type SharedState = Arc; - #[derive(Debug, Deserialize)] pub struct Params { page: Option, @@ -41,7 +36,7 @@ struct FlashData { #[get("/")] async fn list( req: HttpRequest, - data: web::Data, + data: web::Data, opt_flash: Option>, ) -> Result { let template = &data.templates; @@ -77,7 +72,7 @@ async fn list( } #[get("/new")] -async fn new(data: web::Data) -> Result { +async fn new(data: web::Data) -> Result { let template = &data.templates; let ctx = tera::Context::new(); let body = template @@ -88,7 +83,7 @@ async fn new(data: web::Data) -> Result { #[post("/")] async fn create( - data: web::Data, + data: web::Data, post_form: web::Form, ) -> actix_flash::Response { let conn = &data.conn; @@ -113,7 +108,7 @@ async fn create( } #[get("/{id}")] -async fn edit(data: web::Data, id: web::Path) -> Result { +async fn edit(data: web::Data, id: web::Path) -> Result { let conn = &data.conn; let template = &data.templates; @@ -134,7 +129,7 @@ async fn edit(data: web::Data, id: web::Path) -> Result, + data: web::Data, id: web::Path, post_form: web::Form, ) -> actix_flash::Response { @@ -160,7 +155,7 @@ async fn update( #[post("/delete/{id}")] async fn delete( - data: web::Data, + data: web::Data, id: web::Path, ) -> actix_flash::Response { let conn = &data.conn; @@ -200,13 +195,13 @@ async fn main() -> std::io::Result<()> { let templates = Tera::new(concat!(env!("CARGO_MANIFEST_DIR"), "/templates/**/*")).unwrap(); let state = AppState { templates: templates, - conn: Arc::new(conn), + conn: conn, }; let mut listenfd = ListenFd::from_env(); let mut server = HttpServer::new(move || { App::new() - .data(Arc::new(state.clone())) + .data(state.clone()) .wrap(middleware::Logger::default()) // enable logger .wrap(actix_flash::Flash::default()) .configure(init)