Laravel5.1 框架模型工厂ModelFactory用法实例分析

网络编程 2021-07-04 23:05www.168986.cn编程入门
这篇文章主要介绍了Laravel5.1 框架模型工厂ModelFactory用法,结合实例形式分析了laravel5.1框架模型工厂ModelFactory基本功能、定义与使用方法,需要的朋友可以参考下

本文实例讲述了Laravel5.1 框架模型工厂ModelFactory用法。分享给大家供大家参考,具体如下

今天要说的是模型工厂,它是可以快速生成一些测试数据的东西,之前我们介绍过Seeder,当我们使用模型访问数据时 可以用模型工厂搭配Seeder使用。

1 编写一个ModelFactory

ModelFactory的路径在 database/factories/ 下

// 这是系统自带的工厂
$factory->define(App\User::class, function ($faker) {
  return [
    'name' => $faker->name,
    'email' => $faker->email,
    'password' => str_random(10),
    'remember_token' => str_random(10),
  ];
});

// 这是我们写的工厂
$factory->define(App\Article::class, function (Faker\Generator $faker) {
  return [
    'title' => $faker->sentence,
    'body' => $faker->paragraph,
    'ment_count' => rand(1,50),
  ];
});

2 在seeder中使用

编写完模型工厂后就可以在seeder中使用了

class ArticlesSeeder extends Seeder
{
  /
    Run the database seeds.
   
    @return void
   /
  public function run()
  {
    factory(\App\Article::class, 10)->create();
  }
}

class DatabaseSeeder extends Seeder
{
  /
    Run the database seeds.
   
    @return void
   /
  public function run()
  {
    Model::unguard();
    $this->call('ArticlesSeeder');
    Model::reguard();
  }
}

更多关于Laravel相关内容感兴趣的读者可查看本站专题《》、《》、《》、《》及《》

希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。

Copyright © 2016-2025 www.168986.cn 狼蚁网络 版权所有 Power by