[TOC]
#### 详细文档参考地址:
https://laravel-china.org/docs/laravel/5.6/migrations/1400#creating-tables
#### 常用命令:
php artisan make:migration create_users_table --create=users
#### 迁移结构:
php artisan migrate
#### 回滚迁移
想要回滚最新的一次迁移”操作“,可以使用 rollback 命令,注意这将会回滚最后一批运行的迁移,可能包含多个迁移文件:
php artisan migrate:rollback
#### 创建模型的时候同时创建表:
php artisan make:model Model/Admin -m
会在app目录下面生成一个Model文件目录,并且在下面生成Admin.php 模型文件,同时在database migrations 下面生成数据表文件。
#### 使用tinker填充数据:
参考地址:
http://laravelacademy.org/post/4935.html
通常情况下,我们可以使用 Laravel 的模型工厂(model factory)来快速填充我们的数据库,它可以帮我向数据库插入伪数据方便我们测试。现在让我们开始使用 tinker 吧。
![](https://box.kancloud.cn/a034f8027c66702a10e5906f352b6b83_1301x826.png =800x600)
$factory->define(App\Model\Admin::class, function (Faker\Generator $faker) {
static $password;
return [
'username' => $faker->name,
'password' => $password ?: $password = bcrypt('admin888'),
];
});
php artisan tinker
这条命令会打开一个 REPL 窗口供我们使用。刚才我们已经执行过 migration, 现在我们可以直接在 REPL 中使用模型工厂来填充数据。
factory(App\Model\Admin::class,3)->create();
这个时候,一个包含了 3 条新用户记录的集合将在你的终端上打印出来。现在我们可以检查一下这些记录是否真的已经被创建了。
App\Model\Admin::all();
使用 count 方法,还可以查看 User 模型在数据库中一共有多少个 user 。
App\Model\Admin::count();
#### 使用make:seeder进行数据填充
要生成一个填充器,可以通过 Artisan 命令 make:seeder。所有框架生成的填充器都位于 database/seeds 目录:
php artisan make:seeder AdminsTableSeeder
一个填充器类默认只包含一个方法:run。当 Artisan 命令 db:seed 运行时该方法被调用。在 run 方法中,可以插入任何你想插入数据库的数据,你可以使用查询构建器手动插入数据,也可以使用 Eloquent 模型工厂(后面数据库测试部分文档会详述这个概念)。
注:数据库填充期间模型批量赋值(后面 Eloquent ORM 中会详述这个概念)自动被禁止。
举个例子,让我们修改 Laravel 安装时自带的 DatabaseSeeder 类,添加一个数据库插入语句到 run 方法:
<?php
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
class AdminsTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
DB::table('Admins')->insert([
'username' => str_random(10),
'password' => bcrypt('admin888'),
]);
}
}
开始填充数据
php artisan db:seed --class=AdminsTableSeeder
- html&jquery网页特效
- 标签分类及特点
- 关于文字标签
- 网页定时跳转
- css透明度和插件
- 0.前端常用工具
- 1.tab切换效果
- 2.tab切换效果多个代码复用
- 3.百度新闻导航条效果
- 4.解决鼠标移入过快的问题
- 5.滚动条位置
- 6.元素尺寸
- 7.全选反选操作
- 8.固定定位
- 9.开关效果
- 10.节点操作
- 11.仿小米商品展示效果
- 12.仿小米商品展示效果复用
- 13.固定导航栏效果
- 14.凡客轮播图效果
- 15.顶部下滑广告效果
- 16.京东左右滑动轮播图
- 17.京东左右滑动无缝轮播图
- 18.选择器
- 19.筛选
- 20.开关效果
- 21.滑动效果
- 22.小米商品效果css实现
- 23.元素水平垂直居中
- laravel5.6
- LARAVEL 介绍&安装
- javascript & css 脚手架
- php常用工具类
- 安装laravel-ide-helper增强代码提示
- 使用migration创建表和数据填充
- 解决mysql5.7以下laravel不能执行数据迁移的问题
- 路由
- 登陆操作自定义模型
- 使用中间件middleware进行登录权限验证
- 进行表单验证处理
- 使用laracasts-flash定制消息提示
- 资源路由
- 宝塔面板安装fileinfo扩展
- laravel上传处理与使用hdjs快速实现前端上传组件
- thinkphp
- phpstorm
- phpstorm安装插件
- 定义快捷键
- 关闭提示
- 将代码实时同步到远程服务器
- sublime
- composer
- git使用
- git安装和配置作者信息
- git新建项目和维护项目
- git日志操作
- git别名操作
- git分支操作
- git生成发布压缩包
- git系统别名
- gitrebase操作
- 使用SSH与GITHUB远程服务器进行无密码连接
- 本地版本库主动使用remote与远程GITHUB进行关联
- 本地分支与GITHUB远程分支同步
- 项目实战-新入职员工参与项目开发时分支使用
- 自动部署
- ios开发
- linux
- 1.centos6.5 mysql忘记登入密码
- html5
- 标签
- 表单
- 音频与视频
- webstorage储存
- canvas
- css3
- 01.CSS3布局
- 02.transition动画
- 03.animation动画
- 04.flex弹性盒模型
- Less
- gulpjs
- es6
- ES6模块化
- let和const命令
- ES6函数扩展&解构赋值
- JavaScript之数据遍历
- class类
- Set和Map数据结构
- Vue
- 1.创建第一个应用
- 2.属性动态绑定
- 3.表达式
- 4.解决phpstorm不识别ECMASCRIPT6语法的问题
- 5.watch监听属性
- 6.使用object与array控制class
- 7.条件渲染
- 8.循环
- 9.变异方法
- 10.事件
- 11.表单
- 12.组件
- 13.css过渡动
- 14.js库控制vue过渡动作
- 15.自定义指令directive
- 16.使用vue-cli初始化单页面应用
- 17.Vue-router路由
- 18.vuex
- 19.vue-cli
- webpack
- zanui
- nodejs