2016-04-01 16 views
4

これが尋ねられても謝罪しますが、正解を見つけられないようです。Laravel 5.2 - コントローラからデータベーステーブルを作成

コントローラからDBにテーブルを作成する必要があります。

私は以下に働くだろうと信じてするのに十分なナイーブだった:

$idは、コントローラの関数に渡される動的な値である
Schema::connection('mysql')->create('mytable_'.$id, function($table) 
    { 
     $table->increments('id'); 
     $table->timestamps(); 
    }); 

私が上に下に置かれました:

use Illuminate\Database\Schema\Blueprint; 
use Illuminate\Database\Migrations\Migration; 

運 - どのようにDBテーブルは、コントローラから作成することができますか?何か案は?

エラー: enter image description here

ソリューション ベンスウィンバーンが最初のコメントで述べたように、use Schemaが欠落していました!

+0

どうなりますか?間違いはありますか?スキーマのファサードを使用するには 'スキーマの使用 'も必要です。 –

+0

あなたは正しいです...私はちょうどスキーマを使用していませんでした...非常にありがとうございます。 –

+0

未回答のリストから質問を削除できるように回答を投稿しました。 –

答えて

2

を助ける

希望。

ファイルの先頭にuse Schema;があることを確認してください。

1

私は最善のアプローチは、移行を作成し、php artisan migrateコマンドfrom your controllerを実行していることだろうと思う:

Artisan::call('migrate'); 

あなたがstubsを使用してコードからの移行を作成する方法がわからない場合、あなたはいくつかのよく書かれたパッケージからそれを学ぶことができます。私はthis packageからそれを行う方法を学びました。これはあなたがSchemaファサードを使用している

関連する問題