【Laravel6系】掲示板アプリを作ってみた。 vol.1

“6系掲示板アプリ”タグを見ると全て作り方を確認できます。

今回はこの方のブログを参考に掲示板アプリを作成していこうと思います↓

Aburasobalog

では最初に簡単なDB設計からmigrationファイルの作成までを行っていきます。

最近Gitとかも学んだし、その辺使いながらできたらなあということでいきます。

Laravelのバージョンは6系で行っていきます。

ちなみにLaravel6系のインストール方法はこちらから↓

【Laravelインストール】バージョンを指定する方法

DB設計

DBはこんなかんじで作っていきます。

DB設計

DBの作成

今回はMAMP or XAMPを利用する予定で行っていきます。

phpmyadminからの作成を行います。

php myadmin new

ここのNewからdatabaseを作成します。

create database

ここにdatabase名を入れて、”utf8_general_ci”を選択してcreateを押します。

今回僕は”14_post_app”というDB名にしました。

たくさんできてきたらわかりにくいかなと思ってとりあえず番号振っているだけです。

ではその作成したデータベースを選択すると次にここに表示されるPrivilegesというのを選択します。

privileges

選択するとこのデータベースのユーザ一覧できるので、ここから新しいユーザを作成していきます。

なんで、下にある”Add user account”をクリック。

add user acount

ここで入力する項目は以下の3つです。

  • User name
  • Password
  • Re-type

これが入力できたら右下にある”Go”をクリック!

すると先ほどPrivilegesには作成したユーザを確認できるはずです。

今回はlaravel_testというユーザを作成したので以下のようになればOKです。

check created user

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が成功したら次に行ってみよう!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA