“6系掲示板アプリ”タグを見ると全て作り方を確認できます。
今回はこの方のブログを参考に掲示板アプリを作成していこうと思います↓
では最初に簡単なDB設計からmigrationファイルの作成までを行っていきます。
最近Gitとかも学んだし、その辺使いながらできたらなあということでいきます。
Laravelのバージョンは6系で行っていきます。
ちなみにLaravel6系のインストール方法はこちらから↓
Table of Contents
DB設計
DBはこんなかんじで作っていきます。
DBの作成
今回はMAMP or XAMPを利用する予定で行っていきます。
phpmyadminからの作成を行います。
ここのNewからdatabaseを作成します。
ここにdatabase名を入れて、”utf8_general_ci”を選択してcreateを押します。
今回僕は”14_post_app”というDB名にしました。
たくさんできてきたらわかりにくいかなと思ってとりあえず番号振っているだけです。
ではその作成したデータベースを選択すると次にここに表示されるPrivilegesというのを選択します。
選択するとこのデータベースのユーザ一覧できるので、ここから新しいユーザを作成していきます。
なんで、下にある”Add user account”をクリック。
ここで入力する項目は以下の3つです。
- User name
- Password
- Re-type
これが入力できたら右下にある”Go”をクリック!
すると先ほどPrivilegesには作成したユーザを確認できるはずです。
今回はlaravel_testというユーザを作成したので以下のようになればOKです。
DB周りの.envなどの設定
まず、.envファイルの設定を変更します。
先ほど作成したDBの情報を.envに書き込んでください。
.env
DB_DATABASE=14_post_app
DB_USERNAME=laravel_test
DB_PASSWORD=hogehogehoge
次にdatabase.phpも書き換えます。
config/database.php
// 'unix_socket' => env('DB_SOCKET', ''),
'unix_socket' => '/Applications/MAMP/tmp/mysql/mysql.sock',
Code language: PHP (php)
コメントアウトして新しい内容を書きます。
modelとmigrationファイルの作成
次にmodelとmigrationファイルを作成していくので、コマンドで以下を叩きます。
php artisan make:model Post --migration
php artisan make:model Comment --migration
Code language: CSS (css)
そして以下を追記します。
/app/database/migrations/〇〇create_posts_table.php
$table->unsignedBigInteger('user_id')->comment('符号なしのbigint ユーザID->comment');
$table->string('title')->comment('タイトル');
$table->string('body')->comment('記事内容');
$table->foreign('user_id')->references('id')->on('users')->comment('usersテーブルのidカラム参照 ユーザID');
Code language: PHP (php)
そして次
/app/database/migrations/〇〇create_comments_table.php
$table->unsignedBigInteger('user_id')->comment('ユーザID');
$table->unsignedBigInteger('post_id')->comment('ポストID');
$table->string('body')->comment('コメント内容');
$table->foreign('user_id')->references('id')->on('users')->comment('usersテーブル idの外部KEY user_id');
$table->foreign('post_id')->references('id')->on('posts')->comment('postsテーブル idの外部KEY post_id');
Code language: PHP (php)
意味がわからない場合には以下を参照。
6系のmigrationファイルの書き方
できるだけカラムを追加するときはコメントも書くようにしたら優しい。
そしてmigrationファイルができたら一旦確認。
php artisan migrate
これで何もなかったら成功です。
migrateが成功したら次に行ってみよう!