6个版本 (3个稳定版)
3.0.0 | 2023年9月1日 |
---|---|
2.0.0 | 2022年8月29日 |
2.0.0-rc.1 | 2022年7月23日 |
2.0.0-rc.0 | 2022年5月12日 |
0.1.0 | 2021年11月19日 |
1644 在 数据库接口
7KB
102 代码行
helge
Helge是围绕r2d2::Pool和diesel ConnectionManager的轻量级封装,为在异步环境中使用diesel postgres和r2d2提供了一种简单的方法。
示例
let helge = Helge::<diesel::PgConnection>::new("postgres://127.0.0.1/somedatabase")?;
helge.query(|conn| {
diesel::insert_into(users::table)
.values(&NewUser {
name: String::from("Helge"),
})
.execute(conn)
}).await?;
许可证: MIT
lib.rs
:
Helge是围绕r2d2::Pool和diesel ConnectionManager的轻量级封装,为在异步环境中使用diesel postgres和r2d2提供了一种简单的方法。
示例
use diesel::prelude::*;
use helge::{Error, Helge};
diesel::table! {
users {
id -> Integer,
name -> Varchar,
}
}
#[derive(Debug, Insertable)]
#[diesel(table_name = users)]
struct NewUser {
name: String,
}
async fn query() -> Result<(), helge::Error> {
let helge = Helge::<diesel::PgConnection>::new("postgres://127.0.0.1/somedatabase")
.expect("connecting Helge");
helge.query(|conn| {
diesel::insert_into(users::table)
.values(&NewUser {
name: String::from("Helge"),
})
.execute(conn)
}).await;
Ok(())
}
依赖项
~5–12MB
~130K SLoC