alshabalin / kohana-advanced-migrations
dev-master
2015-03-16 12:46 UTC
Requires
- php: >=5.4.0
- alshabalin/kohana-advanced-orm: dev-master
- composer/installers: ~1.0
- evopix/kohana-schema: dev-master
- kohana/core: ~3.3.3
This package is not auto-updated.
Last update: 2024-09-28 18:10:30 UTC
README
Advanced Migrations 是为 kohana 设计的迁移模块,采用了真正的 Rails 方法。
它使用了由 Evopix 编写的 SQL 架构 https://github.com/evopix/kohana-schema
要求
- PHP 5.4
- Kohana 3.3 及其数据库、ORM 模块
- Kohana 高级 ORM 模块
- Kohana Schema 模块
功能
- 生成、执行和回滚迁移的命令。
如何使用
典型的迁移文件看起来像这样
<? class Create_Comments extends Migration { public function up() { Schema::create('comments', function($table) { $table->increments('id'); $table->integer('user_id')->unsigned(); $table->integer('article_id')->unsigned(); $table->text('comment'); $table->enum('status', ['new', 'published', 'banned'])->default('new'); $table->timestamps(); }); Schema::table('articles', function($table) { $table->datetime('last_commented_at')->after('content'); $table->integer('comments_count')->unsigned()->after('content'); }); } public function down() { Schema::drop('comments'); Schema::table('articles', function($table) { $table->drop_column('last_commented_at'); $table->drop_column('comments_count'); }); } } ?>
您可能想要这样创建一个新的迁移
./minion generate:migration --name=Create_Comments
完成所有迁移后,您需要应用所有挂起的迁移
./minion db:migrate
许可证
MIT 许可证 (c) Alexei Shabalin, 2015