本文实例讲述了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,
'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相关内容感兴趣的读者可查看本站专题:《Laravel框架入门与进阶教程》、《php优秀开发框架总结》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家基于Laravel框架的PHP程序设计有所帮助。
您可能感兴趣的文章:- Laravel框架源码解析之入口文件原理分析
- Laravel框架源码解析之反射的使用详解
- Laravel源码解析之路由的使用和示例详解
- 通过源码解析Laravel的依赖注入
- Laravel框架学习笔记(二)项目实战之模型(Models)
- laravel model模型定义实现开启自动管理时间created_at,updated_at
- laravel model模型处理之修改查询或修改字段时的类型格式案例
- Laravel 5框架学习之模型、控制器、视图基础流程
- Laravel模型事件的实现原理详解
- Laravel模型间关系设置分表的方法示例
- laravel学习教程之关联模型
- Laravel框架源码解析之模型Model原理与用法解析