laravel如何快速实现数据填充(使用seeder)

2022-05-15 0 373

下面由Laravel教程栏目带大家介绍laravel利用seeder实现数据表中填充数据,希望对大家有所帮助!

laravel利用seeder实现数据表中填充数据

给大家演示一下如何快速填充数据表中的数据

首先要执行php artisan命令 会出现各种命令指示 查找到

php artisan make:seeder

根据命令指示创建相应的文件,如下所示

php artisan make:seeder TestSeeder

laravel如何快速实现数据填充(使用seeder)

首先我先创建一个test表,如下所示

laravel如何快速实现数据填充(使用seeder)

TestSeeder.php文件内容如下所示

<?phpuse Illuminate\\Database\\Seeder;class TestSeeder extends Seeder{    /**     * Run the database seeds.     *     * @return void     */    public function run()    {        DB::table('test')->insert([            'name' => str_random(10),            'sex' => rand(1,2), // 1男 2女            'email' => str_random(10).'@qq.com',            'password' => bcrypt('123456'), // bcrypt为hash加密        ]);    }}

执行如下命令进行填充假数据

php artisan db:seed --class=TestSeeder

laravel如何快速实现数据填充(使用seeder)

每添加一条都要执行一边命令,这样会很麻烦,不如写一个for循环来一次新插入

for ($x=0; $x<=10; $x++) {     DB::table('test')->insert([          'name' => str_random(10),          'sex' => rand(1,2), // 1男 2女          'email' => str_random(10).'@qq.com',          'password' => bcrypt('123456'), // bcrypt为hash加密     ]);}

数据库的数据展示如下:

laravel如何快速实现数据填充(使用seeder)

如需要同时添加多个表的测试数据,需要在DatabaseSeeder.php中添加:

<?phpuse Illuminate\\Database\\Seeder;class DatabaseSeeder extends Seeder{    public function run()    {        // $this->call(UsersTableSeeder::class);         $this->call(CreateDepartmentsSeeder::class);         $this->call(CreateUsersSeeder::class);         $this->call(CreateWagesSeeder::class);    }}

执行如下命令进行填充多个表的测试数据

php artisan db:seed
当我们执行  php artisan db:seed 提示 class UserTableSeeder does not exist这个错误基本是出现在不经过composer的时候出现的,至于为什么会出现呢?1.可能是你执行php artisan make:seeder UserTableSeeder 的时候,他没有把UserTableSeeder.php 写到自动加载里面去2.你是复制过来的解决方法: composer dump-autoload

官方文档地址: https://laravel.com/docs/5.5/seeding#writing-seeders

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

【声明:根据2013年1月30日《计算机软件保护条例》2次修订第17条规定: 为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存 储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬! 鉴于此,也希望大家按此说明研究软件!】
本站所有源码尽量保证原汁原味,如有特殊情况会作出声明及标注,网站资源不做任何二次加密(原版加密除外,不影响程序使用的不会做解密处理),方便您更好的学习参考。 在您的能力范围内,为了大环境的良性发展,请尽可能的选择正版资源。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

即刻码站__国内靠谱的站长资源下载平台 php教程 laravel如何快速实现数据填充(使用seeder) https://www.jike1995.com/36731.html

常见问题
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度
查看详情

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务