min117の日記

初期desireもち。趣味Mac,メインFedora,仕事xp。

LaravelでECサイト

ハピタス登録で1,000円分になるURL

その買うを、もっとハッピーに。|ハピタス

 

LaravelでECサイトを作ってみたい。これそのまま試す。

www.youtube.com

 

$ php -v

$ php artisan -V

 

プロジェクト作成

$ cd /media/W*/PT3

$ composer create-project laravel/laravel myLaravelPrj02 --prefer-dist

 

文房具データベース(bunboug_db)を作成

$ vim config/database.php

51-53行目を自分のmysqlのもの(ここではrootとそのパスワード)に書き換え。

mysqlにログインして今の状態を見ておくか。

$ mysql -u root -p

mysql> show databases;

myslq> Ctrl + d

 

マイグレーションファイル(DBの定義ファイルか?)を作成。

$ php artisan make:migration create_bunbougs_table

 

$ vim database/migrations/2023_11_25_143005_create_bunbougs_table.php

17-18行目に必要な項目(tableの列名すなわちフィールド名になる項目)を定義していく。

変更後。

18-21行目を追加している。

 

動画だと7:43のあたりを作業してる。

マイグレートして、定義ファイルどおりのテーブルをbungoubu_db内に作る。

$ php artisan migrate

using password: NO のエラーが出てしまうのは .envファイルを編集していないから

 

$ vim .env ←ドットエンヴなので注意。ただのエンヴじゃない。

14-16行目を変更。DB_PASSWORDにはmysqlのrootログインパスを記述する。

 

$ php artisan migrate

エラー内容が Unknown database 'bunbougs' に変わった。

 

.envの14-16行目を書き直し。DB_DATABASEを bunboug_db にしてみる。

 

$ vim database/migrations/一番新しい_create_bunbougs_table2.php

18-21行目を追加。

 

$ php artisan make:migration create_bunbougs_table2

 

$ php artisan migrate

まだUnknownエラーが出よる。

 

しゃーねーmysqlにログインして手動でDBだけ作るわ。

$ mysql -u root -p

$ (パスワードを手入力)

$ create database bunboug_db;

 

$ php artisan migrate

やっと成功。

 

いろいろいじって何とかbunboug_db2の中にbunbougテーブルを作れた。

分類テーブル(bunruis_table)作成

 

分類テーブル(BUnruis)にデータを格納する命令(Seeder)を作成。

$ vim database/seeders/BUnruisSeeder.php

Seederを実行。

$ php artisan db:seed --class=BUnruisSeeder

確認。

 

Seeder作成

文房具テーブル(bungougs)にデータを入れるためのシーダーを作成。

$ vim database/seeders/BunbougusSeeder.php

 

文房具modelとfactoryの作成

$ php artisan make:model Bunbougu

$ php artisan make:factory BunbouguFactory

$ vim database/factories/BunbouguFactory.php



config/app.php の編集

83、96、109行目を日本語対応するようjaに変更。

 

再びSeeder(tableにデータを突っ込む処理)を編集

$ vim database/seeders/BunbougsSeeder.php

7-8行目を追記。

19行目を追記。文房具ファクトリーで10個作ってね、という指示。


Seeder実行

php artisan db:seed --class=BunbougusSeeder

何このエラー。

 

 

モデルの作成



$ php artisan make:controller BunbougsController --resource --model=Bunbougu

 

Route

$ vim routes/web.php

 

blade

$ vim resources/app.blade.php

 

$ vim resources/views/index.blade.php


$ php artisan serve

 

どっかでタイプミス(タイポ)してる。

誤 Cotroller

正 Controller



 

Routeが間違っている

$ vim routes/web.php

20行目を正しくBunbougusControllerに書き換えた(nが抜けてた)。

 

変数のアタマのドル記号抜けてた。

Run migrationsボタンを押してみる。

なんかやっぱDB周りのエラーらしいぞ。migrationからやり直しか?

 

migrationファイルを見てみる。

8行目が間違ってる気がする。

誤 App\Models/Bunbougs

正 App\Models/Bunboug

複数形で変数名つけるやつってほんとセンス無いんだよ。こうやってバグ探しが大変になるだろうが。

 

もっかいシード作成(=DBにデータ自動突っ込み処理)を走らせる。

$ php artisan db:seed --class=BunbougusSeeder

20行目で呼んでいるfactoryに何かありそう。

$ vim database/factories/BunbouguFactory.php

またテーブルつくっちゃえ。

$ mysql -u root -p

$ use bunboug_db2;

$ CREATE TABLE bunbougus LIKE bunbougs;

$ commit;

$ INSERT INTO bunbougus SELECT * FROM bunbougs;

$ commit;


やった!何とかbladeで作った画面が表示されるとこまでは来たぞ!