これまでに勉強した内容は概念や準備なところだったが、覚える量がハンパないので要点を抑えて全体把握していく。
今日から8章を進めていきたいと思います!
記憶すること!
忘れてはいけないMVCで使用するフォルダとファイル
■ルート
routes\web.php
■コントローラー
app\Http\Controllers\○○○.php
■ビュー
resources\views\○○○.blade.php
■モデル
app\Models\○○○.php
8章 ルーティングの基本を学ぼう
何をするにもフォルダ構成を覚える必要と感じた
ルーティングは、
「routes」フォルダの「web.php」、「routes」フォルダの「web.php」、「routes」フォルダの「web.php」…
//ルーティングのために編集するファイルは「routes」フォルダの「web.php」
C:\xampp\htdocs\laravel-basic-kadai\routes\web.php
//ルーティングの仕方3種類
// 1.ルーティングの基本的な設定方法
Route::HTTPリクエストメソッド名('URL', [コントローラ名::class, 'アクション名']);
// 2.ルートに名前をつける場合
Route::HTTPリクエストメソッド名('URL', [コントローラ名::class, 'アクション名'])->name('ルートの名前');
// 3.その他の設定方法
Route::HTTPリクエストメソッド名('URL', function () {
そのURLにアクセスしたときに実行する処理
});
Laravelではデータベースを扱うためのHTTPリクエストメソッド(method属性)の要素として、「GET(ページの更新)」または「POST(作成)」の他に「PUT/PATCH(更新)」,「DELETE(削除)」が使用できる
9章 コントローラの基本を学ぼう
コントローラーは以下のコマンドで作成する
php artisan make:controller コントローラ名
コマンドによって作成されたファイルのフォルダ格納先
app\Http\Controllers\○○○○○○.php
作成されたファイル
↓↓↓↓
<?php
後述する名前空間の記述
namespace App\Http\Controllers;
use宣言によってこのクラスを使うぜ!と宣言する
use Illuminate\Http\Request;
親クラス「Controller」を継承する「AmesunController」クラスが作成された
class AmesunController extends Controller
{
//
}
上のコントローラークラスに以下のようなアクションを作成していくらしい
index():一覧ページ
create():作成ページ
store():作成機能
show():詳細ページ
edit():更新ページ
update():更新機能
destroy():削除機能
名前空間(namespace)について
- 住所を指定することで名前の重複があっても識別できる
- 名前の衝突を避けることができる
- プログラマーを支援する概念として「名前空間」と「スコープ」という概念がある
分かりやすいSAMURAI TERAKOYAさんのページを参考にします
スコープと名前空間という二つの概念は似ていますが、厳密に言うと違いがあります。
名前空間は「名前の衝突を避ける」為に存在する概念ですが、スコープは「参照できる範囲」の事を指します。
スコープには名前の衝突を避けるなどといった目的はなく、単にあるスコープ内に定義された変数や関数はそのスコープ内でしか使用できないという事です。
SAMURAI TERAKOYA:【JavaScript入門】使わなきゃ損!名前空間をやさしく解説!
アクションの作成方法 ※amesunControllerの場合
- ルーティング設定をする ※routes/web.php
・use宣言でルーティングを設定するコントローラを宣言する
・ルーティングを記述する
ム、エラーが…
【ルートファイルを変更 ※rotes/web.php】
use宣言の頭文字を小文字から大文字に変更したところ進展
use app\Http\Controllers\AmesunController; ←ボツ
use App\Http\Controllers\AmesunController; ←大文字に変更
ム、さらなるエラーが…
でも、表示したいメッセージは出てる…
【appファイルを変更 ※config/app.php】
timezoneとあったのでappファイルに着目し変更
'timezone' => 'JST'; ←ボツ
'timezone' => "Asia/Tokyo", ←"Asia/Tokyo"に変更
無事エラーなくなったゾ
10章 ビューの基本を学ぼう
ルーティンを行い、コントローラでアクションを設定し、ビューを用意する。
この章は問題なし。
感想
MVCで使用するフォルダをとにかく覚えること!