15 lines
597 B
Rust
15 lines
597 B
Rust
use diesel::r2d2::{ConnectionManager, Pool, PoolError, PooledConnection};
|
|
use diesel::MysqlConnection;
|
|
|
|
pub type DbPool = r2d2::Pool<ConnectionManager<MysqlConnection>>;
|
|
pub type MyPooledConnection = PooledConnection<ConnectionManager<MysqlConnection>>;
|
|
|
|
fn init_pool(database_url: &str) -> Result<DbPool, PoolError> {
|
|
let manager = ConnectionManager::<MysqlConnection>::new(database_url);
|
|
Pool::builder().build(manager)
|
|
}
|
|
|
|
pub fn get_pool() -> DbPool {
|
|
let connspec = std::env::var("DATABASE_URL").expect("DATABASE_URL");
|
|
init_pool(&connspec).expect("Failed to create DB pool")
|
|
}
|