Laravel - 动态创建表(无需迁移)

问题描述 投票:0回答:2

我正在尝试根据管理员请求动态创建一个表,虽然它看起来应该像大多数 Laravel 文档一样简单,但我似乎无法 create 一个表。虽然我可以删除表格,并根据需要添加或删除列。

这是我的基本代码模型:

use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

public static function createTable()
{
    Schema::create('randomName', function($table) {
        $table->increments('id');
        $table->string('name');
    });
}

这里可能出现什么问题?不幸的是,我没有收到任何错误,所以不知道如何调试它。

有什么建议吗?预先感谢!

php mysql laravel database-schema
2个回答
67
投票

呃,没关系...我已经研究了足够长的时间,解决方案一如既往...非常简单。

我只需要先找到数据库的连接,而不是

Schema::create('tableName', function($table)
{           
    $table->increments('id');
});

Schema::connection('mysql')->create('tableName', function($table)
{
    $table->increments('id');
});

希望这对将来的某人有所帮助!


12
投票

这个更好。

use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;

Schema::create('tableName', function (Blueprint $table) {
        $table->id();
        $table->timestamps();
    });
© www.soinside.com 2019 - 2024. All rights reserved.