Thinkphp5 使用composer中seeder播种机
前因:
前几天,客户要求做一个会员问答的系统,我就按流程做了,到了需要调用数据库数据时,觉得一个个添加又有点笨~
解决过程:
后来查了查手册,看看国外blog案例,我搞出来了个不错的方法~~~
我的使用记录已截图:



直到后面这个,显示出,时间,就表明播种机运行成功了~

以下是使用官方过程
Seeder 的创建
在 Thinkphp5 项目中,我们可以在命令行输入下面这条命令:
php think seed:create UserSeeder
创建一个 UserSeeder 文件,创建成功之后你可以在 database/seeds 目录下面看到:
database
|-seeds
|-|-UserSeeder.php
其内容如下:
<?php
use think\migration\Seeder;
class UserSeeder extends Seeder
{
/**
* Run Method.
*
* Write your database seeder using this method.
*
* More information on writing seeders is available here:
* http://docs.phinx.org/en/latest/seeding.html
*/
public function run()
{
}
}
代码非常的简单,默认的给出了一个 run 方法,现在我们都知道 seeder 文件是用来产生模拟数据的,而产生模拟数据的代码写在 run 方法中就可以了。
Seeder 的 run 方法
在 run 方法中,我们可以随意填写了可以填充数据库的任意代码。这里我就抛砖引玉啦:
要求:
给数据表 Users 模拟生成100条数据。表结构如下:
| 字段 | 说明 |
|---|---|
nickname |
呢称 |
email |
邮箱 |
password |
密码 |
收到需求后,我可以这样写:
<?php
use think\migration\Seeder;
class UserSeeder extends Seeder
{
/**
* Run Method.
*
* Write your database seeder using this method.
*
* More information on writing seeders is available here:
* http://docs.phinx.org/en/latest/seeding.html
*/
public function run()
{
$rows = [];
for ($i = 0; $i < 100; $i++) {
$rows[] = [
'nickname' => mt_rand(10000, 99999),
'email' => mt_rand(10000, 99999).'@qq.com',
'password' => md5('123456'),
];
}
$this->table('users')->insert($rows)->save();
}
}
注意:一定要调用
save()方法,否则不会保存的。
首先呢,我生成了100条数据,然后调用 $this->table('users')->insert($rows)->save(); 将生成的数据插入到数据库的 Users 表中。是不是很简单? ^ - ^.
执行 Seeder
Seeder 文件定义好了之后,还必须得执行一下数据才能插入到数据库中,我们可以这样执行:
php think seed:run
执行成功提示: All Done. Took 0.0552s。可以看到:

Thinkphp5 使用composer中seeder播种机的更多相关文章
- ThinkPHP5作业管理系统中处理学生未交作业与已交作业信息
在作业管理系统中,学生登陆到个人中心后可以通过左侧的菜单查看自己已经提交的作业和未提交作业.那么在系统中如何实现这些数据的查询的呢?首先我们需要弄清楚学生(Student).班级(class).作业提 ...
- ThinkPHP5 与 composer
我是通过安装composer来获取tp5安装的,也是学习一下 在 Windows 中,你需要下载并运行 Composer-Setup.exe. 安装时,要选择本地环境中php.exe作为跟目录,这个可 ...
- thinkphp5.0 分页中伪静态的处理
1.修改文件\thinkphp\library\think\Paginator.php(此文件用于分页) isurl是否为伪静态 加入isurl用于判断是否使用伪静态分页 */ protected $ ...
- [Fiddler] 在 Composer 中对HTTP报文进行编辑,重新执行
如果想要对某个HTTP请求进行编辑,然后重新执行观察结果,可以将这个报文从左侧拖放到右侧的Composer里面 这样就可以很方便的修改HTTP请求的方法,报文头,报文体 在用 SoapUI 做 API ...
- ThinkPHP5通过composer安装Workerman安装失败问题(避坑指南)
$ composer require topthink/think-workerUsing version ^2.0 for topthink/think-worker./composer.json ...
- composer中常用命令
一些常用的composer命令: # 显示所有已经安装的包 composer show # 移除指定的依赖包package_name composer remove package_name # 搜索 ...
- thinkphp5.0 composer安装phpmailer
1.安装:composer require phpmailer/phpmailer 2.引入:use PHPMailer\PHPMailer\PHPMailer: 3.调用:$mail = new P ...
- ThinkPHP5通过composer安装Workerman安装失败问题
报错: topthink/think-worker v3.0.2 requires topthink/framework ^6 https://blog.csdn.net/Douz_lungfish/ ...
- thinkphp5 Windows下用Composer引入官方GitHub扩展包
很多新手,比如说我,写代码就是在windows下,所以总会遇到很多不方便的地方,比如说GitHub上面的代码更新了,要是你在linux,只要几行命令就可以搞定更新了,在windows下面,你需要用到C ...
随机推荐
- c 读取整个文件内容
char* textFileRead(char* filename){char* text;FILE *pf = fopen(filename,"r");fseek(pf,0,SE ...
- 关于pom版本提交不成功的问题
今天碰到个问题:我在原来的一个pom项目的client服务里面修改了一个java类,但是没有升级版本.然后再预发环境更新后,从显示的日志来看,仍然是我修改前的版本. 这就奇怪了,看了svn确实已经提交 ...
- jdk1.8 对数组及arrays类对数组的操作与增强
数组的初始化有两种方式 静态初始化: 初始化时由程序员显示置顶每个数组的初始值,由系统决定数组长度.如: int[] a1 = new int[] {1,2,3,4}; 动态初始化:初始化时由程序员只 ...
- List 的 removeAll 方法的效率
List 的 removeAll 方法的效率低的原因: 要遍历source,对dest进行contain操作,而contain又要遍历dest进行equal比较. 解决办法:dest转为set,用se ...
- easyui学习笔记12—tab标签页的添加和删除
这一篇我们来看看标签页的添加和删除动作.我在想看这些例子还不如看文档,文档的内容更加全面,但是文档全部是理论没有实际的操作,看起来很枯燥,文档只能是遇到问题的时候查.easyui的文档写的还是很详细的 ...
- 全新Chrome Devtool Performance使用指南
运行时性能表现(runtime performance)指的是当你的页面在浏览器运行时的性能表现,而不是在下载页面的时候的表现.这篇指南将会告诉你怎么用Chrome DevToos Performan ...
- TB5上正常使用msfconsole
在TB上使用系统自带的msfconsole,给出以下错误 [-] Failed to connect to the database: could not connect to server: Con ...
- 保存头像- vue项目-base64字符串转图片
<img :onerror="errpic" class="customerHead" :src="param.customerHead&quo ...
- hdu-1792 A New Change Problem---数论&剩余系
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1792 题目大意: 给定A和B,A和B互质,求最大不能组合数,和不能组合数的个数. 解题思路: 由于g ...
- Ubuntu14.04.3,apt-get出现dpkg: error processing package xxx (--configure)和cups-daemon错误的解决方案
Ubuntu14.04.3,使用apt-get安装软件的时候,报个莫名其妙的错误: dpkg: error processing package xxx (--configure): balabala ...