[氪-Kr] Rust开发工具包
cargo add kr --features macros| 模块 | 说明 |
|---|---|
| crypto | 封装 Hash 和 AES 相关方法 |
| helper | 一些辅助方法:Time、Redis |
| mutex | 基于 Redis 的分布式锁 |
| redix | 基于 bb8 的 Redis 连接池初始化封装 |
| sql | DB初始化 和 基于 sea-query 的 curd 封装 |
- AES
- CBC
- ECB
- GCM
aes 相关功能依赖 openssl
- 使用
#[derive(Model)]
#[model(UserLite !(email, phone))] // 排除字段
#[model(UserBrief (id, name), derive(Copy, Debug))] // 包含字段
pub struct User {
pub id: i64,
#[sqlx(rename = "username")]
pub name: String,
pub email: String,
pub phone: String,
pub created_at: String,
pub updated_at: String,
}- 生成代码
#[derive(sqlx::FromRow)]
pub struct UserLite {
pub id: i64,
#[sqlx(rename = "username")]
pub name: String,
pub created_at: String,
pub updated_at: String,
}
#[derive(sqlx::FromRow, Copy, Debug)]
pub struct UserBrief {
pub id: i64,
#[sqlx(rename = "username")]
pub name: String,
}👉 具体使用可以参考 rnx
Enjoy 😊