LaravelでController,Migration,Modelを作成する一連の流れを紹介

こんにちは!
個人開発者の南です!

Laravelを使っている時に、よくController,Migration,Modelの作成の作り方の流れをよく忘れるので、メモとして残しておきます。

Laravelを普段から使っている人には、当たり前のことなのですが。。。

まだ使い慣れていないといちいち調べるのがめんどくさいので、1ページにまとめて置こうと思って記事にすることにしました。

使っている環境について

使用している環境は、LaradocというDocker上でLaravelを動かすために必要なものが一通り入っているものを使います。

Dockerとは、WindowsやMac,Linuxどのマシンを使っていても、Docker上であれば同じ環境が用意できるというもの。

興味がある方は、下記の記事にDockerについてまとめて置いたので参考にしてみて頂ければと思います!

MacでDockerをインストールする方法をご紹介!

Laradocの公式サイトはこちら

Laravelのインストール

まずは、Laravelをインストールしていきます。

ここでは、次の流れで行います。

・Laradoc環境の立ち上げ
・ワークスペースにSSH
・Laravelのインストール

Laradoc環境の立ち上げ

まずは、Laradoc環境の立ち上げを行っていきます。

ターミナルやCMDなどで、まずはLaradocのフォルダがある場所まで移動します。


Laradocのフォルダまで移動ができたら、下記のコマンドを入力しましょう。

すると下記のように色々と表示されます。


ちなみに、Laradoc自体を止める場合は下記のコマンドを入力します。

ワークスペースにSSH

Laradocを立ち上げたら、今度はLaradocにSSH接続をしましょう。

SSH接続とは、ターミナル上でサーバーにアクセスして、ターミナル上でサーバーのフォルダやファイルなどを色々いじる時に使用する接続になります。

LaradocにSSHをする場合は、下記のコマンドを入力します。

うまくSSH接続ができると、下記画像のように「root@」といった表示になると思います。


ちなみに、SSH接続を解除する場合は、下記のコマンドを入力しましょう。

入力することで、下記のように自分の「Laradoc」のフォルダに戻ってくることができます。


Laravelのインストール

LaradocにSSH接続をした状態まで、これたら今度はLaravelをインストールします。

今回は、Laravel5.7をインストールしますので、下記のコマンドを入力します。

コマンドを入力する場所は、SSH接続したあとの場所のままで大丈夫です。

また、今回入力するコマンドはcomposerというPHPのパッケージ管理システムが入っている必要があります。

Laradocを使っている場合は、既にcomposerが入っていると思いますが、他の環境を使っている場合は導入しておくようにしましょう。

composerの公式サイトはこちら

入力すると下記のように、色々表示されます。


ちなみに、上記のコマンドの中にある「プロジェクト名」のところに、作成したいフォルダ名を入力します。

例えば、僕は下記のように入力しました。

入力することで、ディレクトリ上では下記のように表示されます。


ちなみに、入力すると下記のように表示されますが、これはcomposerをroot権限で実行しないでくださいというようなエラーになります。

これはこれで、別で対処する必要がありそうですが、一旦無視で大丈夫かと思います。。。

「Do not run Composer as root/super user! See https://getcomposer.org/root for details」

また、今回使うバージョンはLaravelの5.7を使うので、コマンドの最後に「–prefer-dist “5.7.*”」と付け加えています。

別のバージョンを使いたい場合は、別のバージョンを指定するようにしましょう。

URLの設定

インストールができたら、今度はURLの設定を行っていきます。

単純にディレクトリで分けれますが、できれば下記のようにURLで分けたほうが分かりやすいかなと思うので、URLで分けれるように設定を行っていきます。

http://laravel-test.test

URLで分けるには、ローカル内のLaradocの中にある、nginxの設定ファイルをコピーします。

nginxの中にある「default.conf」というファイルをコピーして、「app.プロジェクト名.conf」という名前に書き換えます。


僕は、「app.laravel-process.conf」という名前に書き換えました。

名前を書き換えたら、「default.conf」を「default.conf.bak」というファイルに書き換えます。


書き換えができたら、今度は「app.laravel-process.conf」のファイルを開いて「server_name」と「root」の2点を変更します。

おそらく、デフォルトのままだと下記のように表示されていると思います。

それを下記のように書き換えます。

confファイルを書き換えたら、「server_name」で追加した、ドメインを自分のローカルホストの「hosts」ファイルに反映しましょう。

「hosts」ファイルは、Macだと下記のディレクトリ内にあります。

「/private/etc/」

ファイルを開いたら、下記のように「server_name」で追加したドメインを「hosts」ファイルに追加します。


最後に、hostsファイルを書き換えたらターミナル上のSSHを抜けて、先程変更した設定を反映します。

設定を反映する場合は、一度Laradocを停止して、下記のコマンドで立ち上げます。

ちなみにLaradocを停止するには、下記のコマンドを入力します。

もう一度立ち上げたら、設定したURLにアクセスしてみましょう。


Laravelの文字が表示されているはずです。

MySQLの設定

URLの書き換えが終わったら、次はデータベースの設定を行っておきます。

データベースの設定は、作成したLravelのファルダの中にある「.env」ファイルを開きます。


「.env」ファイルを開いたら、データベースの設定に関する項目を書き換えます。

データベースの項目は、下記になります。

デフォルトだと上記のようになっていると思います。

それを下記のように書き換えます。

これでMySQLの設定は完了です。

Controllerの作成

設定が終わったところで、いよいよControllerを作成していきます。

Controllerを作成するには、下記のコマンドを入力します。

今回はテストなので、下記のようにコントローラーを作成します。

コマンドを実行する場所は、アプリのトップディレクトリ内で作成するにようにしましょう。

僕の場合は、「laravel_process」というアプリを作成したので、「laravel_process」のトップディレクトリで行います。


コントローラーが無事作成されると、下記のように表示されます。


これでコントローラーの作成は完了です。

ModelとMigrationの作成

コントローラーが作成できたところで、次はModelとMigrationファイルの作成を行います。

Migrationファイルとは、データベースの構造などがコード化されたファイルのことになります。

ModelとMigrationを作る場合は、下記のコマンドを実行します。

今回はテストなので、下記のコマンドを実行しました。

すると、下記の2つのファイルが作成されます。

・Test.php
・2019_04_30_075951_create_tests_table.php


まとめ

今回は、Laradocの立ち上げから実際にLaravelのコントローラーやモデルなどの作成の一連の流れについて紹介しました。

今回の記事が少しでもあなたの役に足れば幸いです。

この記事を書いた人

南 健太郎

1991年生まれ。都内でエンジニアをしています。
このブログでは、個人開発や日々の技術に関する情報などを発信していきます。