22

I'm trying to create a table dynamically upon an admin request, and while it seems it should be straightforward like most of Laravel's documentation, I can't seem to create a table. Though I can drop tables, and add or drop columns as I wish.

This is my basic code model:

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');
    });
}

What could possibly be the problem here? Unfortunately I don't receive any errors so not sure how to debug it.

Any advice? Thanks in advance!

Shay
  • 2,060
  • 2
  • 16
  • 22

2 Answers2

67

Ugh, never mind... I worked on it for long enough, and the solution as always was... Very simple.

I just had to figure a connection for the database first, so instead of

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

It is

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

Hope this helps someone someday in the future!

Shay
  • 2,060
  • 2
  • 16
  • 22
12

This one is even better.

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

Schema::create('tableName', function (Blueprint $table) {
        $table->increments('id');
        $table->timestamps();
    });
YakuZa
  • 516
  • 7
  • 12