网上找了很多资料,都很坑爹,说是要把之前的表都给删掉,然后重新运行,有的说要指定
网上找了很多资料,都很坑爹,说是要把之前的表都给删掉,然后重新运行,有的说要指定database的文件路径,都不管用。
php artisan migrate:reset
php artisan migrate
这样的话我之前的数据不都是白搞的了??
这样肯定不行的啊,我就自己摸索,然后发现其实可以直接创建指定的表,运行thinker,然后运行up方法即可!示例代码如下:
这个需要设置composer.json里面的自动加载,需要加载database/migrations这个文件夹下面的文件:
....
"autoload": {
"classmap": [
"database/seeds",
"database/migrations",
"database/factories"
],
....
PS D:\phpStudy\WWW\BCCAdminV1.0> php artisan tinker
Psy Shell v0.7.2 (PHP 7.1.9 — cli) by Justin Hileman
>>> (new CreateAccessLogsTable)->up();
=> null
>>>
运行出来个null,我还想着估计完蛋了,但是i还是去数据库看了一眼,你猜怎么着,还真的成功了!
public function up() {
// Schema::dropIfExists('users');
Schema::create('access_logs', function (Blueprint $table) {
$table->increments('id');
$table->string('ip')->default('0')->comment('ip地址');
$table->integer('customer_id')->default('0')->comment('用户ID');
$table->string('refer_website')->default('')->comment('来源网站');
$table->string('broswer')->default('')->comment('客户端浏览器');
$table->string('operating_system')->default('')->comment('客户端操作系统');
$table->string('resolution')->default('')->comment('客户端分辨率');
$table->string('visited_page')->default('')->comment('被访问的页面');
$table->timestamp('created_at');
$table->timestamp('left_at');
});
}
批量生成假数据:
https://www.jb51.net/article/171449.htm
以上这篇Laravel 创建指定表 migrate的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。
Laravel 创建 指定表 migrate