Laravelの基本はこちらから学べます

Laravel6×MAMPで掲示板を作ろう①




ターミナルでcomposerを使ってLaravelをインストールする。

Laravel 6.x インストール

composer create-project --prefer-dist laravel/laravel blog(←アプリ名) "6.*"

このコマンドを打つだけでLaravelがインストールできます!

cd blog

blogディレクトリに移動しましょう。

Laravelの画面を出す

まずMAMPを起動しましょう。

下の図のように「Apache Server」「MySQL Server」が緑色に光れば成功。

php artisan serve

Laravel development server started: <http://127.0.0.1:8000> →が出たら成功

Chromeで「http://127.0.0.1:8000」をみてみましょう!

初めてのLaravelを見ることができました。成功です!!!

MVCのイメージを掴む

DBを作成する

作成するDBを確認しよう

今回は下記のようなDB構造にしましょう。

User 1人に対して、Postが複数(1対多)

User 1人に対して、Commentが複数(1対多)

Post 1つに対して、Commentが複数(1対多)

https://s3-us-west-2.amazonaws.com/secure.notion-static.com/faa74cd0-787d-455e-9871-799943e2c3b3/_2020-04-15_10.18.46.png

Mysqlにデータベースを作成する

mysql -u root -proot

create database blog;

blogというデータベースを作りました。「blog」はあなたが作成したいアプリの名前に合わせて変更しましょう。

ここでコマンドでエラーが出た場合は以下の記事の「2. MAMPで開発環境を整える。」をみてみましょう。PATHを通す必要があるはずです!

PHP×MAMPでHigh&Lowゲームを作ろう(1) | Aburasobalog

MAMPとLaravelをつなげる

まずは「unix_socket」の追加とコメントアウト

config database.php

'mysql' => [

'unix_socket'   => '/Applications/MAMP/tmp/mysql/mysql.sock',→追加
// 'unix_socket' => env('DB_SOCKET', ''), →コメントアウト

]

次にenvの設定(envには様々な重要情報が入ってます)

//DB_DATABASE=laravel
DB_DATABASE=blog→こちらは先ほど作成したデータベース名

//DB_PASSWORD=
DB_PASSWORD=root→追加してあげましょう

model及びmigrationファイルを作成する

php artisan make:model Post --migration

php artisan make:model Comment --migration

このコマンドを打つことで、migrationとmodelが同時に作成できます。

migrationする。

create_posts_table.phpに追加しよう。

$table->unsignedBigInteger('user_id');
$table->string('title');
$table->string('body');

$table->foreign('user_id')->references('id')->on('users');

user_idは外部キー。(外部のテーブルに連動するキー)

create_comments_table.phpに追加しよう。

$table->unsignedBigInteger('user_id');
$table->unsignedBigInteger('post_id');
$table->string('body');

$table->foreign('user_id')->references('id')->on('users');
$table->foreign('post_id')->references('id')->on('posts');

user_idとpost_diは外部キー。

外部キーをつけることで

Post は「誰」の物なのか

Comment は「誰」の物で、「どの」Post へのコメントなのか認識できるようになる。

php artisan migrate

エラーが出なければデータベース作成成功です!!

作成したデータベースを確認する

MAMPの「Open WebStart page」をクリック。

TOOLS→PHPMYADMINをクリック

作成したデータベース名(今回だとblog)をクリック

マイグレーション して作成した「Posts」「Comments」テーブルがあります!確認OK。

ログイン機能をつける

composerで簡単にログイン機能をつけよう。

Laravel 6.x 認証

composer require laravel/ui "^1.0" --dev

php artisan ui vue --auth

npm install

npm run dev

上記コマンドを1つ1つ打ち込みましょう!

認証機能はこちらの作業のみで終了します!

認証機能ができたか確認しよう

php artisan serve

Laravel development server started: <http://127.0.0.1:8000>

上記URLにいくと…….

右上に「Login」 「Register」ボタンが出現しました!

試しに新規登録、ログインなどを試してみましょう。

Laravelの時間設定を日本にしよう。

config app.php

//'timezone' => 'UTC',
'timezone' => 'Asia/Tokyo',


//'locale' => 'en',
'locale' => 'ja',

UTCからAsia/Tokyoに変更をしてあげましょう。ついでに、localeも変更しましょう。

今回はここまで。次回からCRUD機能の作成に進んでいきましょう。

それでは!




コメントを残す

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