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

laravel框架数据迁移、填充(简单示例)--学习笔记

2017-09-28 21:37 891 查看
数据填充到数据库主要分为两步,迁移和填充

1、数据迁移

第一步:创建建表文件

php artisan make:migration create_demos_table

php artisan make:migration create_demos_table --create=demos(自动生成表名)

在\database\migrations文件夹下,

public function up() {

  Schema::create('tests', function (Blueprint $table) { 

  $table->increments('id'); 

  $table->string('name'); $

table->timestamps();

}); 

}

  public function down()

    {

        Schema::dropIfExists('tests');

    }

第二步:生成表

php artisan migrate

刷新数据库,可以看见demos的表

2、数据填充

第一步创建核心填充文件,并写入填充内容

php artisan make:seed DemosTableSeeder

在\database\seeds文件夹下,

a)单数据填充

在run方法下,加入

DB::table('demos')->insert([ 

'name' => str_random(10), 

 ]);  //向数据库填充一条记录

b)多数据工厂填充

在run方法下,加入

factory(\App\Models\Demo::class)->times(30)->create(); // 表示创建30条数据,得有模型

发现这个时候需要引入factory,打开\database\factories\ModelFactory.php

$factory->define(\App\Models\Test::class, function (Faker\Generator $faker) { 

 return [ 'name' => $faker->name, 

 ]; 

});

第二步填充数据

php artisan db:seed --class=DemosTableSeeder

刷新数据库可验证

还有另外一种,在\database\seeds文件夹下有DatabaseSeeder.php,run方法加入

  Model::unguard();//取消批量上传限制

        $this->call(DemosTableSeeder::class);//可操作多个表

执行php artisan db:seed即可,

一些填充数据细节有待验证。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: