sea-orm
sea-orm copied to clipboard
Axum Example not working
trafficstars
[DatabaseConnection] is passed as State .with_state(state) in Axum Server but this don't work. [DatabaseConnection] can't be shared across threads.
In examples/axum_example/api/src/lib.rs
...
#[derive(Clone)]
struct AppState {
templates: Tera,
conn: DatabaseConnection,
}
...
dotenvy::dotenv().ok();
let db_url = env::var("DATABASE_URL").expect("DATABASE_URL is not set in .env file");
let conn = Database::connect(db_url)
.await
.expect("Database connection failed");
let templates = ...
let state = AppState { templates, conn };
...
let app = Router::new()
.route("/", get(list_posts).post(create_post))
...
.with_state(state);
...