Laravel模型工厂可以做什么,如何使用?

Admin 2022-10-27 群英技术资讯 285 次浏览

这篇文章主要介绍“Laravel模型工厂可以做什么,如何使用?”,有一些人在Laravel模型工厂可以做什么,如何使用?的问题上存在疑惑,接下来小编就给大家来介绍一下相关的内容,希望对大家解答有帮助,有这个方面学习需要的朋友就继续往下看吧。


今天要说的是模型工厂,它是可以快速生成一些测试数据的东西,之前我们介绍过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,
    'comment_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模型工厂可以做什么,如何使用?”就介绍到这了,如果大家觉得不错可以参考了解看看,如果想要了解更多,欢迎关注群英网络,小编每天都会为大家更新不同的知识。 群英智防CDN,智能加速解决方案

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

猜你喜欢

成为群英会员,开启智能安全云计算之旅

立即注册
专业资深工程师驻守
7X24小时快速响应
一站式无忧技术支持
免费备案服务
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
在线客服
微信公众号
返回顶部
返回顶部 返回顶部
在线客服
在线客服