- はじめに
- 学習準備をしよう
- HTML/CSS編
- PHP基礎編
- コマンドライン編
- DB基礎編
- Laravel基礎編
- 第1章 Laravel入門
- 1-1 Laravelの基礎を理解しよう
- 1-2 セットアップ
- 1-3 Laravelをインストールしよう
- 1-4 Laravelのコーディング規約を知ろう
- 1-5 ディレクトリとファイルの構成を知ろう
- 1-6 ブラウザに画面を表示しよう
- 1-7 ブラウザに画面表示を使用:controller編
- 1-8 ブラウザに画面表示をしよう:route編
- 1-9 ブラウザに画面表示をしよう:view編
- 1-10 基本的なアプリケーションを作成しよう
- 1-11 データを作成しよう:マイグレーション編
- php artisan migrate:fresh と php artisan migrate:refreshの違い
- 1-12 データを作成しよう:シーディング編
- 1-13 CRUD処理を学ぼう:準備編
- 1-14 CRUD処理を学ぼう:データの取得
- 第2章 Laravel応用
- 第3章Laravel発展
- 第1章 Laravel入門
- Laravel演習編
- 番外編①~エラー対処~
- 番外編②~PHP、Laravelの覚書き~
- 番外編③~Laravelで作成すべきアプリ候補~
- 番外編④~Laravel 11をdocker環境で使う~
- 番外編⑤~セキュリティー編~
- 実践編 ECサイト作成にあたってのチップス
はじめに
・コア知識とトッピング知識に分ける。コア知識は繰り返し練習し、必ず使えるようにする。トッピング知識は、トッピングの仕方を理解するだけでよい。
・書物のどこを探せばよいか、すぐわかるように記載してます。
・Webページ制作については、レイアウトはしっかり作れるように。デザインはほどほどに。
学習準備をしよう
第1章 エンジニア力
1-1 良いエンジニアとは
1-2 検索力とは
エラーの対処:
① タイプミスや抜けているところがないか確認。
② エラーをコピーして、Googleる。
③ 質問を言語化する
④ レファレンスをみる
⑤ 英語に翻訳して調べる
1-3 質問力とは
質問のしかたについて
ドキュメント、レファレンスについて
Notion
1-4 生産性とは
生産性
効率化
タイピング
ショートカットキー一覧
学習環境のセットアップ
3-1 初めての環境構築をしてみよう
3-2 Webブラウザをセットアップしよう
Google chromeの拡張機能 : ichinen、
3-3 エディタのセットアップ
3-4 コマンドラインのセットアップ
Ubuntuの導入 WSL2
PATHを通す
Homebrew
bashrcをvimで編集
3-5 Git/GitHubのセットアップ
SSHkeyが切れる → コマンドプロンプトを使用する際、管理者権限でのコマンドプロンプトで、wsl –installしなかったためと考えられる。

3-6 Dockerのセットアップ
HTML/CSS編
第1章 HTML
1-1 HTML
1-2 セットアップ
1-3 インデントとコメントアウト
HTMLでのコメントアウトは下記である。
<!– –>
1-4 段落と見出しを表すタグ
1-5 特殊文字と改行
特殊文字 エスケープ
1-6 強調と重要性を表すタグ
1-7 箇条書きリスト
箇条書きの点を消す方法:
1-8 説明リスト
ラベルとテキストエリアの左端をそろえる方法:
1-9 リンクタグ
1-10 絶対パスと相対パス
1-11 画像タグと動画タグ
imgは、インライン置換要素。インライン要素だが、inline-blockのようにふるまう。
1-12 テーブルタグ
セルの結合
練習問題
1-13 フォームタグ
1-14 グループ化タグ
spanとテンプレートエンジン
(未完)1-15 セクション
1-16 著作権情報を表すタグ
1-17 メタデータタグ
<head>
<link rel="stylesheet" href="css/style.css" />
</head>
ファビコン
OGP
1-18 Emmet
div.content
→<div class="content"></div>
1-19 検証ツール
第2章 CSS
2-1 CSSを学ぼう
2-2 セットアップ
2-3 CSS設計の基本
2-4 CSS命名規則
2-5 セレクタ
2-6 優先順位
> > > > [()内は点数]
2-7 要素の表示形式

2-8 文字装飾
2-9
2-10
2-11
2-12
2-13
2-14
2-15
2-16 練習問題
2-17 Flexbox
2-18 Position
フリマページ(メルカリのページなど)の作成には、これは必須である。
後で出てくるPHP基礎編での、世界と日本の時刻表示のところで、result.phpでは、国旗の下に時刻などが表示されているのは、これを使用している。→ html-css(desktop PC) > freemarket.html
2-19 Float
2-20 CSS Grid Layout
2-21 要素の変形
2-22 擬似要素
2-23 検証ツール
3 章 レスポンシブデザイン、静的webデザイン
3-1 レスポンシブデザイン・静的webデザイン
3-2 レスポンシブデザインとは
3-3 レスポンシブデザインパターン
3-4 静的UIパーツ
3-5 レイアウト
シングルカラムレイアウト
PHP基礎編
第1章 PHPの基礎構文を覚えよう
1-1 PHPをはじめよう
1-2 セットアップ
1-3 変数と定数
1-4 演算子
1-5 条件分岐
1-6 繰り返し
1-7 関数
1-8 配列と連想配列
1-9 データの受け取り
第2章 Webブラウザで表示できるアプリケーションを作成してみよう
2-1 世界時計アプリを作成しよう
コマンドライン編
第1章 コマンドラインの基礎を学習しよう
(済)1-1 コマンドラインに慣れよう
open = explorer.exe
(済)1-2 基本的なコマンドを覚えよう
Linuxコマンド一覧
形:コマンド オプション 命令内容
移動
コピー ディレクトリをコピーする場合、cp と cp -r の違い
削除 (ディレクトリ削除)rm -r
(ファイル削除)rm
(済)1-3 ファイルとディレクトリを理解しよう
ホームディレクトリとは?
・・・使用しているユーザが自由に使えるディレクトリの一番上のディレクトリ
→コマンドでは、’~’で表現する
Ubuntuを使い始める際に、『cd ~/coachtech』と打つ意味は?
url の ’/’ は、ルートディレクトリと言うか?
1-4 パスの概念を理解しよう
1-5 コマンドライン基礎演習
第2章 Webの基礎を抑えよう
2-1 コマンドラインを使ってWebの基礎を抑えよう
2-2 Webの概要を理解しよう
2-3 Mac編なので欠番
2-4 コマンドでWebサーバを作ろう
2-5 ローカルでドメインを作る
第3章 バージョン管理システムを使いこなそう
DB基礎編
Laravel基礎編
第1章 Laravel入門
1-1 Laravelの基礎を理解しよう
1-2 セットアップ
1-3 Laravelをインストールしよう
composer
dockerでcomposer使用:https://qiita.com/PitPat/items/dc1ad09f7936b8825473
1-4 Laravelのコーディング規約を知ろう
1-5 ディレクトリとファイルの構成を知ろう
1-6 ブラウザに画面を表示しよう
1-7 ブラウザに画面表示を使用:controller編
1-8 ブラウザに画面表示をしよう:route編
ルートプレフィックス・・・ モデルのリレーションのところで後で出てくる。
ルートグループ
1-9 ブラウザに画面表示をしよう:view編
基本的には、PHPテンプレートと同様に記述することができます。 異なる点は、{{$content}}
という部分です。 二重波括弧「{{}}
」はPHPのechoと同じ働きをします。 つまり、Bladeでは<?php echo $変数; ?>
という風に記述していたPHPテンプレートをより簡略化することができます
ディレクティブ一覧
・@isset 定義されている かつ nullでない →true
・@if (@isset($item)) ~ @endif
1-10 基本的なアプリケーションを作成しよう
1-11 データを作成しよう:マイグレーション編
database>migrationのphp を作成する
コンテナ内で、php artisan make:migration create_(テーブル名;~s)_table
upメソッドに追記
コンテナ内で、php artisan migrate
php artisan migrate:fresh と php artisan migrate:refreshの違い
1-12 データを作成しよう:シーディング編
1-13 CRUD処理を学ぼう:準備編
ORMを使えるようにする
モデルの作成
php artisan make:model (モデルクラス名)
モデルに、fillableプロパティの記載
コントローラーにモデルを登録
1-14 CRUD処理を学ぼう:データの取得
シングルアロー演算子
ダブルアロー演算子
第2章 Laravel応用
2-1 Laravelの応用を理解しよう
2-2 検索とモデル結合ルート
検索機能の追加
find.blade.phpは複雑になる。具体的には、受け取るものと送るものが混在する。
2-3 デバック
2-4 バリデーションについて学ぼう

2-5 モデルのリレーションの基本を学ぼう

以前、このような疑問があった。レコードをモデルとして扱い、テーブルをコレクションとして扱うとなると、別のテーブルのデータを使用したい場合は2通りの方法がある。
①Serviceクラスなどを作成し、そこから、2つ以上のモデルを参照しながら記述する
②データベースを統合して、利用する
PHPは、②でやるのが通例であり、従テーブルの主キーを、『[主テーブルのモデル名]_id』と命名し、そのデータを、主テーブルにカラムを付け足すことで、一つのテーブルにする(第2正規形と逆のことをしている)
モデルクラスのメソッドで、リレーションを定義する。
2つのテーブルを統合したいのなら、それぞれのモデルクラスに、リレーションを定義するメソッドを設定する必要がある。
<配列の作成の仕方について>
Book.php
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class Book extends Model
{
protected $guarded = array('id'); ←①
public static $rules = array(
'author_id' => 'required',
'title' => 'required',
); ←②
public function getTitle(){
return 'ID'.$this->id . ':' . $this->title;
}
}
2-6 モデルのリレーションを深めよう
第3章Laravel発展
3-1 Laravelをもっと知ろう
3-2 ミドルウェアを使用してみよう
php artisan make:middleware (クラス名)
作成したミドルウェアクラス内の、handleメソッドの引数は2つ。
try: この例を下記のように書き換えて作成すべし。middleware.blade.php内の、inputタグ の name属性名はsubmit_textとし、これを扱うコントローラー名をPermittedControllerへ変更。
→未達成
参考資料:https://zenn.dev/third_tech/articles/dd00892e15545e
https://qiita.com/shibuchaaaan/items/848e788fb4ce7c7082e7
3-3 セッションについて学ぼう
Laravel演習編
(発展)『管理者画面』の作成

番外編①~エラー対処~
419エラーへの対処

403エラーへの対処
LaravelからMySQLに接続するときのエラー

Dockerコンテナ停止原因の究明

Dockerが中途半端にたちあがったままで修正できないときの対処
docker-compose down
docker-compose up -d –build
上記を行う
番外編②~PHP、Laravelの覚書き~
PHP関連
namespace
require

use
Laravel関連
サービスコンテナ DI

Serviceクラスを作成する

番外編③~Laravelで作成すべきアプリ候補~
勤怠管理アプリ
番外編④~Laravel 11をdocker環境で使う~

番外編⑤~セキュリティー編~
XSS、CSRF

実践編 ECサイト作成にあたってのチップス
詳細画面でのデータ取得
詳細画面については特定のレコードを指定して画面表示を行うことになります。
特に多い実装例としては一覧画面からレコードを1つ選択して詳細画面に遷移するような画面遷移になります。この際、詳細画面を開くには対象となる特定のレコードを識別する必要があります。どのレコードを取得するかの条件を受け取らないといけないため、レコードを識別できる主キーの値を渡すことがほとんどになります。
ルートパラメーターに主キーの値(Laravelではほとんどの場合idとなる)を仕込んで詳細画面を表示し、そのidの値でレコードを取得し画面を表示するような実装になります。
コメント