首页 文章

如何在不使用laravel默认方式使用命令行的情况下在数据库中创建表

提问于
浏览
0

我试图从用户输入作为表名,字段列表及其类型(整数或文本)并将其保存在表中,然后使用该输入动态创建表 .

2 回答

  • 0

    我可以向你保证,你需要选择一种更新的工作方式,如果你打算与Laravel合作,那么你需要与Eloquent模特一起工作 . 如果可以,您可以与我们分享这个想法,我们可以帮助您完善逻辑 . 您应该学习使用一个表并找到分隔条目的方法 .

    但是你想要做的是可以实现的:

    Illuminate\Support\Facades\Schema::create('table_name', function (Blueprint $table) {
                $table->increments('id');
                $table->integer('driver_id')->unsigned();
                $table->boolean('read_status')->default(false);
                $table->timestamps();
    
                $table->foreign('driver_id')
                    ->references('id')->on('drivers')
                    ->onDelete('cascade');
            });
    

    像这样的东西,你应该自定义它

  • 0

    使用 Illuminate/Database/Schema/Builder 类和create方法将新表添加到数据库:

    DB::connection('mysql')->getSchemaBuilder()->create(request()->input('table'));
    

    然后使用table方法修改表 .

    当然,您可以随时运行raw queries,但在接受使用输入时会带来风险 .

相关问题