Laravel5 sqliteでテーブルをつくってみたったったったwwww
migrationファイルを作成する
以前は下記のコマンドで作成できたけど
php artisan migrate:make ファイル名
laravel5は下記に変更
php artisan make:migration ファイル名
ちなみに上記のコマンドを叩くよりも効率よく開発ができるのは下記のコマンド
php artisan make:migration ファイル名 --create="テーブル名"
なぜ効率がいいのか?
Schema::create('テーブル名', function(Blueprint $table)
{
$table->increments('id');
$table->timestamps();
});
が自動で作ってくれるw
少し全体をみるようにしてみると
public function up()
{
Schema::create('テーブル名', function(Blueprint $table)
{
$table->increments('id');
$table->timestamps();
});
}
--create="テーブル名"を追加するだけで
upの中にテーブル作成につかうソースの雛形が展開されるw
laravel4にこのコマンドがあったのかは無知のためわからないw
でもこれからはこのコマンドを使うようにしようとおもうw
で、実際にmigrationのコマンドを叩いてテーブルをつくってみる。
未実行のmigrationを全て実行させる
php artisan migrate
めっちゃエラーかえってきたwwwwwww
なんかこいつlarave4でもみたぞー
って思いながらいろんなとこいじくりまわして
やっと原因が判明したw
migrationコマンドエラー原因
Laravel5/の直下で下記コマンドを叩く
touch storage/database.sqlite
こいつをつくってあげないといけなかった。
俺はdetabase/の直下に作ってたからずっとエラーが返ってきてた。
もう本当にここでげろはまりして疲れた・・・
で、もう一度migrationを実行させてみる
php artisan migrate
これで無事にテーブルが生成されたで・・・
で、テーブルができているのかを確認する必要がある。
テーブルの確認
下記コマンドでsqliteにアクセスする
sqlite3 storage/database.sqlite
テーブルの有無の確認をする
.table
これで今回作成したテーブルがあれば無事テーブル作成完了
感想:
変わってるところと変わってないところが
わかってないからマジで1つ1つ時間かけながら手探りでやってるから
すごい効率わるいしほんまにこれでええんかなって思うことが多々あるw
やっとできたーって時に参考元みつけたときの絶望感w
参考元: