laravel学習でよく使うターミナルコマンドまとめ

プログラミング勉強

こんにちは。ウェブカツ!女性割引にてプログラミング学習中のみや***です。

(※女性割引は現在新規募集はしておりません)

現在自習としてコーディングを復習するかたわら、ウェブカツではlaravel部を進めています。

まだまだ触り始めたばかりでlaravelへの理解が追いついていない状態ですが、今回の記事では「laravel学習中よく使うターミナルのコマンド」についてまとめました。

pcを開いて、さぁプログラミング頑張るぞ〜って時に「あのコマンドなんだったっけ・・・?」といちいち調べるのは面倒なので、まとめておくと便利!

すでに必要なインストール・初期設定は済んでいる前提で、ウェブカツでの学習中によく使うコマンドを主に集めています。

その前に:ターミナルを複数立ち上げる方法

ターミナルにコマンドを入力する前段階のことになりますが、

ウェブカツのlaravel部を手順通り進めてゆくと、ターミナルで必要なファイルを作成して、次にターミナルでデータベースを確認して、また戻って・・・という手順が発生します。

最初私は意味がわかってなくて、1つのターミナルウィンドウに色々な指示を入力してエラーを出し、「なんで??」となっていたのですが、

ファイルを作成するコマンドと、データベースを照会するコマンドは同じところ(?)には打てません。

(正確には、データベースを見たいならmySqlにログインしてその状態でコマンドを打つ必要があり、ファイル作成ならデータベースの中ではなく普通のディレクトリでコマンドを打つ必要がある、という意味です。)

なので、ファイル作成用とデータベース操作用、サーバーを起動する用・・・と必要に応じて複数のターミナルウィンドウを立ち上げたほうが操作が楽です。

そして、複数のターミナルを起動させるのは簡単です!

ターミナルをアクティブな状態にして、⌘ + n すればOK。

別ウィンドウが立ち上がります。

マイグレーション関係のコマンド

データベースの作成・編集を行うためのマイグレーションファイル。

ファイルを作成するだけではなにも起こらないので、ファイル作成ー>実行までをターミナルから操作できます。

マイグレーションファイル作成

作成したマイグレーションファイルは database/migrations の中に入ります。
php artisan make:migration マイグレーションファイル名

上記コマンドでマイグレーションファイルは作成できますが、オプションをつけると雛形が利用できるので、ちょっと長いですが以下のコマンドを使ってみてください。

php artisan make:migration create_テーブル名_table --create=テーブル名

マイグレーションファイルはテーブルを作る以外でも追加・削除などを指定するためにも新たに作成するので、何をどうするためのファイルかをわかりやすく命名する必要があります。

そのため、create(作成する)_テーブル名_table という文言を前半に入れます。後半の–create・・・はオプション指定です。

DB更新用のマイグレーションファイル作成

php artisan make:migration add_目的語_to_テーブル名_table --table=テーブル名

add_目的語・・・と命名することで、「何をaddするためのファイル」だということがわかりやすくなります。

カラム削除のためのマイグレーションを作るのも同じです。

add…の部分をdelete…などにしてあげればOK。

マイグレーション実行

php artisan migrate

マイグレーション豆知識

  • マイグレーションはファイルを作成した順に実行される
  • 特定のマイグレーションファイルだけ実行することはできない

ロールバック

php artisan migrate:rollback

1つ前のマイグレーション前まで戻ります。

初期状態に戻してマイグレーションを実行

php artisan migrate:refresh

最初の状態に戻して新規でマイグレーションを実行。

モデル

モデルはコントローラーのアクションと紐づいて、SQL文のようにデータベース接続・insertやupdate等を行う際に使用します。

ビューテンプレート(ブラウザで見える画面)からユーザーが入力した内容をデータベースへ登録・・・という流れの中で絡んでくるイメージ。

モデルを作成

作成したモデルはapp/ディレクトリ内に保存されます。
php artisan make:model モデル名

コマンドのモデル名の部分は頭文字を大文字にし、テーブル名の単数形で書くことで自動的にテーブルと結びつく仕様になっています(変更も可能)。ex: テーブル名 users モデル名 User

参考:laravelドキュメント

 

ルーティングのリストを見る

php artisan route:list

データベース 操作

ターミナルからデータベースのテーブルやカラムの状態を確認するためのコマンド。

コマンドの最後の コロンと、DATABASESやTABLESのように複数形での入力を忘れがち。
大文字小文字はどちらでもOK。

データベースへログイン

cdコマンドでプロジェクトディレクトリに移動した後、

mysql -u root -p

を入力。するとパスワードを求められるので入力。(デフォルトだとroot)

成功するとデータベースにログインできます。

データベース一覧を見る

SHOW DATABASES;

使いたいデータベースを指定

use データベース名;

テーブル一覧を見る

show tables;

テーブルを指定してカラム詳細を見る

describe テーブル名;

 

サーバーを起動

Webサービス部ではMAMPのみでサイトを確認できますが、laravel部ではターミナルでサーバーを起動するためのコマンドを入力します。

※MAMPは不要

ターミナルに

php artisan serve

を入力。

http://localhost:8000
にアクセスすれば、サイトを確認できます。

終了したい時は

control+c

で終了。

 

laravelと素のPHPはぜんぜん別物

現状よく使うコマンドはこれくらいですが、また何かあれば追記してゆきます!

それにしても、素のPHPとフレームワークは同じPHPといえどもかなり雰囲気が違うので、別物を触っているような感覚・・・。

自分でPHPのコードをぽちぽち書いていると「何をどう動かしてるか」が分かるので、エラーが起こった時も対応しやすいです。

でもフレームワークだと少ない記述で色々やってくれる分、自分が何のコードを書いているのかをちゃんと把握してないとちょっとした変更もままなりません。

 

プログラミング学習を始めて半年以上たっていますが、毎日新しく学ぶことがたーくさんあって、改めてプログラミングってかんたんじゃないな〜って感じてます。

どこをゴールにするかは人それぞれですが、私はウェブカツで指してくれている技術は使えるようになりたいなっと思っているので、

このプログラミング学習漬けの日々に「大変だ〜」とこぼしつつも、頑張ります!

 

 

タイトルとURLをコピーしました