Expand description
Phinx 风格 migration 链式 API
提供 Phinx 风格的链式建表/改表 API,更直观易用。
§设计
Phinx 是 PHP 生态流行的 migration 工具(think-orm 默认集成), 其 API 风格比传统 SchemaBuilder 更直观:
$table = $this->table('users');
$table->addColumn('name', 'string', ['limit' => 255])
->addColumn('email', 'string', ['limit' => 255])
->addIndex(['email'], ['unique' => true])
->create();本模块提供 Rust 版本的等价 API:
ⓘ
use sz_orm_core::phinx_migration::{PhinxTable, ColumnType};
use sz_orm_core::db_type::DbType;
let sql = PhinxTable::new("users")
.add_column("name", ColumnType::String, |c| c.limit(255).not_null())
.add_column("email", ColumnType::String, |c| c.limit(255).not_null())
.add_column("age", ColumnType::Integer, |_| {})
.add_index(&["email"], |i| i.unique())
.add_foreign_key("role_id", "roles", "id", |fk| fk.on_delete_cascade())
.create(DbType::MySQL);Structs§
- Column
Options - 列选项构建器(Phinx 风格链式配置)
- Foreign
KeyOptions - 外键选项构建器(Phinx 风格链式配置)
- Index
Options - 索引选项构建器(Phinx 风格链式配置)
- Phinx
Table - Phinx 风格表构建器
Enums§
- Column
Type - Phinx 风格列类型枚举