zoukankan      html  css  js  c++  java
  • laravel5中使用faker生成模拟数据

    环境:
    laravel5.1

    第一步:安装扩展包
    网址:https://github.com/fzaninotto/Faker
    使用composer安装,命令如下所示
    composer require fzaninotto/faker

    第二步:编辑laravel中的模型工厂

     1 vim database/factories/ModelFactory.php
     2 
     3   <?php
     4   
     5   $factory->define(AppUser::class, function (FakerGenerator $faker) {
     6       return [
     7           'name' => $faker->name,    //用户名
     8           'email' => $faker->safeEmail,     //邮箱
     9           'age' => $faker->numberBetween(10,120),   //年龄
    10           'account' => $faker->bankAccountNumber,   //账户
    11           'address'=> $faker->address               //地址
    12       ];
    13   });

    第三步:编辑User模型
    这一步也可以不需要,由于我的user表中没有添加created_time和updated_time字段,所以要将user.php修改一下

     1 vim app/Model/User.php
     2 
     3 添加一行
     4 
     5 public $timestamps = false;
     6 
     7 另附上user表建表语句
     8 
     9 mysql> show create table user G
    10 *************************** 1. row ***************************
    11        Table: user
    12 Create Table: CREATE TABLE `user` (
    13   `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
    14   `name` varchar(32) NOT NULL DEFAULT '',
    15   `age` int(10) unsigned DEFAULT NULL,
    16   `email` varchar(32) NOT NULL DEFAULT '',
    17   `account` varchar(64) NOT NULL DEFAULT '',
    18   `address` varchar(64) NOT NULL DEFAULT '',
    19   PRIMARY KEY (`id`)
    20 ) ENGINE=InnoDB AUTO_INCREMENT=101 DEFAULT CHARSET=utf8
    21 1 row in set (0.00 sec)
    22 
    23 mysql>

    第四步:添加一个路由访问模型工厂生成数据

    1 vim app/Http/routes.php
    2 
    3   Route::get('/createuser',function(){
    4           //$user = factory(AppUser::class)->make();   //生成数据对象,但没有添加到数据库
    5           $user = factory(AppUser::class,100)->create();    //生成数据并添加到数据库,factory第一个参数是数据模型,第二个参数是生成数据数量100条
    6 
    7  });

    第五步:访问路由,生成数据表中的数据如下图所示

  • 相关阅读:
    $digest / $apply digest in progress报错
    get与post请求
    面试题(北京)
    Docker监控平台prometheus和grafana,监控redis,mysql,docker,服务器信息
    Zabbix系列优秀博文
    Docker安装Zabbix
    使用Docker部署监控系统,Prometheus,Grafana,监控服务器信息及Mysql
    docker镜像加速,docker更换为国内镜像
    记一次,Docker镜像1G多精简至300+M的过程
    docker通过dockerfile构建JDK最小镜像,Docker导出导入镜像
  • 原文地址:https://www.cnblogs.com/iaknehc/p/7778009.html
Copyright © 2011-2022 走看看