1个不稳定版本
0.0.1 | 2019年10月18日 |
---|
#37 在 #async-orm
30 每月下载量
在 sprattus 中使用
19KB
475 行
sprattus,Postgres的异步Rust ORM
未来 .awaits
sprattus是一个crate,允许您使用Rust结构体轻松地在Postgres数据库上执行异步CRUD操作。
入门
将sprattus添加到您的cargo.toml
sprattus = "0.0.1"
在Postgres中创建一个表
CREATE TABLE fruits(
id SERIAL PRIMARY KEY,
name VARCHAR NOT NULL
);
创建与创建的表对应的结构体
struct Fruit {
id: i32,
name: String
}
最后添加sprattus宏和注解
use sprattus::*;
#[derive(ToSql, FromSql, Debug)]
#[sql(table = "fruits")]
struct Fruit {
#[sql(primary_key)]
id: i32,
name: String
}
现在您可以使用新创建的结构体与客户端一起使用了!
use tokio::prelude::*;
use sprattus::*;
#[derive(ToSql, FromSql)]
#[sql(table = "fruits")]
struct Fruit {
#[sql(primary_key)]
id: i32,
name: String
}
#[tokio::main]
async fn main() -> Result<(), Error>{
let conn = PGConnection::new("postgresql://127.0.0.1/dellstore2?user=tg").await.unwrap();
let fruit = Fruit{
id: 0,
name: String::from("apple")
};
let created_fruit = conn.create(fruit).await?;
dbg!(created_fruit);
Ok(())
}
请查看文档以获取更多信息。
依赖项
~1.5MB
~35K SLoC