您的位置:首页 > 编程语言 > PHP开发

12. Laravel 4 迁移&数据填充

2013-12-22 20:50 471 查看

创建迁移文件

php artisan migrate:make create_users_table

指定路径

php artisan migrate:make foo --path=app/migrations

指定表名

php artisan migrate:make add_votes_to_user_table --table=users

快速创建某张表

php artisan migrate:make create_users_table --create=users

运行迁移

运行所有迁移

php artisan migrate

运行指定目录下的所有迁移

php artisan migrate --path=app/foo/migrations

运行拓展包中的迁移

php artisan migrate --package=vendor/package

注意: 若出现
class not found
这样的错误提示,请尝试运行
composer dump-autoload
命令。

回滚迁移

回滚最后一次运行的迁移

php artisan migrate:rollback

回滚所有迁移

php artisan migrate:reset

回滚 并 重新运行 所有迁移

php artisan migrate:refresh

可以考虑同时完成数据填充:

php artisan migrate:refresh --seed

试做迁移

通过以下语句可以试做迁移,得到本次迁移的 SQL 语句,而不会真的访问数据库。

php artisan migrate --pretend

数据库填充

执行默认填充类

php artisan db:seed

默认填充类
/app/database/seeds/DatabaseSeeder.php


指定填充类

php artisan db:seed --class=UserTableSeeder

在 一个填充类 中调用 其它的填充类

// app/database/seeds/DatabaseSeeder.php
class DatabaseSeeder extends Seeder {

public function run()
{
// 调用其它填充类
$this->call('UserTableSeeder');
$this->command->info('向命令行输出信息');
}

}
// app/database/seeds/UserTableSeeder.php
class UserTableSeeder extends Seeder {

public function run()
{
DB::table('users')->delete();

User::create(array('email' => 'foo@bar.com'));
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  laravel migrate seed