1 个不稳定版本
0.2.0 | 2024年6月22日 |
---|
#2139 在 数据库接口
5KB
rocket_sqlx_migrator
使用此软件包与 rocket
网络框架和 rocket_db_pools
一起,通过使用一个代理和一些泛型类型魔法,在启动时自动运行迁移。
您只需使用 rocket_db_pools
定义一个 db 类型
#[derive(Database)]
#[database("times")]
struct MainDB(Pool<Sqlite>);
然后使用以下方法将其注册到迁移器
#[launch]
fn rocket() -> _ {
rocket::build()
.attach(MainDB::init())
.attach(SqlxMigrator::<MainDB>::migrate())
}
注意:您目前无法更改迁移文件夹的默认位置,默认位置在 ./migrations
。
FWI:我在寻找一些帮助来创建一些测试!
注意2:使用 cargo readme 生成说明
lib.rs
:
使用此软件包与 rocket
网络框架和 rocket_db_pools
一起,通过使用一个代理和一些泛型类型魔法,在启动时自动运行迁移。
您只需使用 rocket_db_pools
定义一个 db 类型
#[derive(Database)]
#[database("times")]
struct MainDB(Pool<Sqlite>);
然后使用以下方法将其注册到迁移器
#[launch]
fn rocket() -> _ {
rocket::build()
.attach(MainDB::init())
.attach(SqlxMigrator::<MainDB>::migrate())
}
注意:您目前无法更改迁移文件夹的默认位置,默认位置在 ./migrations
。
FWI:我在寻找一些帮助来创建一些测试!
注意2:使用 cargo readme 生成说明
依赖关系
~20–52MB
~1M SLoC