我想创建一个新的数据库动态和数据库(用户)与特权,表在新的数据库中为每个新的用户在飞行中,只与不使用命令提示符/控制台的代码。是的,我对laravel几乎是个新手,但我对PHP有很好的了解。
我在DB::statement上进行了一些搜索,以创建一个数据库,但没有得到太多信息。我也尝试过像artisan::call(migrate)这样的迁移工具,但在这方面也得不到任何清晰的东西。
我想要使用laravel代码的解决方案,而不是来自/for命令提示符的命令。
发布于 2019-04-30 15:22:26
您必须使用Eloquent胶囊管理器在代码中创建表。
use Illuminate\Database\Capsule\Manager as Capsule;
$capsule = new Capsule();
$capsule->addConnection([
'driver' => config('database.connections.mysql.driver),
'host' => config('database.connections.mysql.host),
'database' => config('database.connections.mysql.database),
'username' => config('database.connections.mysql.username),
'password' => config('database.connections.mysql.password),
'charset' => config('database.connections.mysql.charset),
'collation' => config('database.connections.mysql.collation),
'prefix' => config('database.connections.mysql.prefix),
]);然后你可以像这样创建表格。请务必检查表是否存在:
if(!Capsule::schema()->hasTable($this->table)){
Capsule::schema()->create($this->table, function (Blueprint $table) {
$table->engine = 'InnoDB';
$table->charset = 'utf8';
$table->increments('id');
$table->string('email')->unique();
.
.
.
});
}https://stackoverflow.com/questions/55915624
复制相似问题