1:置迁移数据表,创建生成模型和迁移文件:

php artisan make:model Article -m

2:接着,在框架中的database/migrations文件夹中找到刚创建的用户表Article

3:打开插入代码:

<?php

use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema; class CreateArticlesTable extends Migration
{
/**
* Run the migrations.
*
* @return void
*/
public function up()
{
Schema::create('articles', function (Blueprint $table) {
$table->id();
$table->string('name','100')->comment('文章标题');
$table->text('content')->comment('文章内容');
$table->string('author')->comment('文章作者');
$table->timestamps();
});
} /**
* Reverse the migrations.
*
* @return void
*/
public function down()
{
Schema::dropIfExists('articles');
}
}

4:然后此时执行迁移文件:

php artisan migrate

5:查库看表:

6:最后,我们开始使用Faker填充数据,创建用户的填充文件

php artisan make:seeder ArticleSeeder

7:

此时,我们需要在articles模型层中使用  protected $guarded = [];不然,会无法填充数据

<?php

namespace App\models;

use Illuminate\Database\Eloquent\Model;

class Article extends Model
{
//
protected $guarded = [];
}

8:接着,我们生成一个数据工厂

php artisan make:factory ArticleFactory -m Models/Article

9:在ArticleFactory .php文件中修改填充文件的数据

<?php

/** @var \Illuminate\Database\Eloquent\Factory $factory */

use App\models\Article;
use Faker\Generator as Faker; $factory->define(Article::class, function (Faker $faker) {
return [
// 'password' => bcrypt('admin'),
'name' => $this->faker->name,
'content'=>$this->faker->name,
'author' => $this->faker->name,
//password_hash('admin666')
// 'email' => $this->faker->unique()->safeEmail,
// 'phone' => $this->faker->unique()->phoneNumber,
];
});

10:在ArticleSeeder.php文件中:

<?php

use Illuminate\Database\Seeder;
use App\models\Article; class ArticleSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
//重置表数据
Article::truncate();
//生成100条数据
factory(Article::class,100)->create();
//修改id=1用户
Article::where('id', 1)->update(['name' => 'admin']);
}
}

11最后在DatabaseSeeder.php中修改总调用

<?php

use Illuminate\Database\Seeder;

class DatabaseSeeder extends Seeder
{
/**
* Seed the application's database.
*
* @return void
*/
public function run()
{
$this->call([
ArticleSeeder::class
]);
}
}

12,终端执行命令

php artisan db:seed

13:查库看表数据:

14,数据填充为中文,修改config\app.php

'faker_locale' => 'zh_CN',

laravel7 数据迁移及填充数据的更多相关文章

  1. Freemarker取list集合中数据(将模板填充数据后写到客户端HTML)

    1.模板写法: <html> <head> <title>freemarker测试</title> </head> <body> ...

  2. C#+EntityFramework编程方式详细之Code First 数据迁移

    在前几篇的C#+EntityFramework编程方式中介绍了C#+EntityFramework编程方式Code First ,Model First以及Dtatabase First 等编程方式, ...

  3. 【Redis】集群数据迁移

    Redis通过对KEY计算hash,将KEY映射到slot,集群中每个节点负责一部分slot的方式管理数据,slot最大个数为16384. 在集群节点对应的结构体变量clusterNode中可以看到s ...

  4. Entity Framework CodeFirst数据迁移

    前言 紧接着前面一篇博文Entity Framework CodeFirst尝试. 我们知道无论是“Database First”还是“Model First”当模型发生改变了都可以通过Visual ...

  5. EF Code First:实体映射,数据迁移,重构(1)

    一.前言 经过EF的<第一篇>,我们已经把数据访问层基本搭建起来了,但并没有涉及实体关系.实体关系对于一个数据库系统来说至关重要,而且EF的各个实体之间的联系,实体之间的协作,联合查询等也 ...

  6. HBase 数据迁移方案介绍

    一.前言 HBase数据迁移是很常见的操作,目前业界主要的迁移方式主要分为以下几类: 图1.HBase数据迁移方案 从上面图中可看出,目前的方案主要有四类,Hadoop层有一类,HBase层有三类.下 ...

  7. HBase 数据迁移方案介绍 (转载)

    原文地址:https://www.cnblogs.com/ballwql/p/hbase_data_transfer.html 一.前言 HBase数据迁移是很常见的操作,目前业界主要的迁移方式主要分 ...

  8. Bash实践:抽样检测数据迁移至Redis集群后的数据一致性

    熟悉了一段时间的Bash编程,因此借此任务操作一把bash编程,主要涉及到Redis单节点与Redis集群的操作 1. 任务背景 近日有个任务需要将历史的Redis(主从节点)中的数据迁移至Redis ...

  9. 数据迁移的应用场景与解决方案Hamal

    本文来自网易云社区 作者:马进 跑男热播,作为兄弟团忠实粉丝,笔者也是一到周五就如打鸡血乐不思蜀. 看着银幕中一众演员搞怪搞笑的浮夸演技,也时常感慨,这样一部看似简单真情流露的真人秀,必然饱含了许许多 ...

随机推荐

  1. ByteArrayOutputStream内存流

    简介 ByteArrayOutputStream 对byte类型数据进行写入的类 相当于一个中间缓冲层,创建ByteArrayOutputStream类实例时,内存中会创建一个byte数组类型的缓冲区 ...

  2. java链式创建json对象

    我们主要介绍一下:java中如何通过最简单的方式实现链式创建json对象,解决创建json代码臃肿的问题. 1.假设我们要创建一个json对象格式如下: { "code": 0, ...

  3. Scala中的运算符

    Scala和Java中的运算符用法基本一致. 一.区别 1."=="和"equals"的用法 Java: String str1 = "abc&quo ...

  4. Oracle 11G 安装详解

    oracle官网下载地址:http://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html 官网下载 ...

  5. Solution -「CEOI 2017」「洛谷 P4654」Mousetrap

    \(\mathscr{Description}\)   Link.   在一个含 \(n\) 个结点的树形迷宫中,迷宫管理者菈米莉丝和一只老鼠博弈.老鼠初始时在结点 \(y\),有且仅有结点 \(x\ ...

  6. Solution -「CF 1361E」James and the Chase

    \(\mathcal{Description}\)   Link.   给定 \(n\) 个点 \(m\) 条边的有向弱连通图.称一个点是"好点"当且仅当从该点出发,不存在到同一点 ...

  7. 使用docker部署awx-1.7.1.0(ansible图形化界面)

    文章目录 关于环境 下载awx 下载安装所需依赖 安装docker-compose 配置inventory文件 出现的报错 TASK [local_docker : Run migrations in ...

  8. 解决Chrome94之后非安全网站请求localhost报CORS问题

    问题 自从谷歌浏览器升级到chrome94版本后,在非安全网站下通过请求本地接口就会出现以下错误: Access to XMLHttpRequest at 'http://127.0.0.1:1000 ...

  9. Rust所有权及引用

    Rust 所有权和借用 Rust之所以可以成为万众瞩目的语言, 就是因为其内存安全性. 在以往内存安全几乎全都是通过GC的方式实现, 但是GC会引来性能.CPU以及Stop The World等问题, ...

  10. selenium+python 处理只读日期控件的2种方法

    前言 有时候测试过程中会遇到日期控件场景,这时候需要特殊处理,下文以12306网站为例 1.处理方式 通常是通过js去除只读属性(2种方法),然后通过send_keys重新写值 from time i ...