Laravel 10 PUT:画像を特定のフォルダに格納する

【Laravel】マルチログイン機能を構築し本格的なECサイトをつくってみよう ↑ こちらの教材のメモになります。 InterventionImage を諦めて(リサイズだけだし...)、次に進むために画像をアップロードする必要がある。 書き方も変える必要がある。 メイント…

Laravel 10.x:compact関数

Udemyの教材:【Laravel】マルチログイン機能を構築し本格的なECサイトをつくってみよう【Breeze/tailwindcss】 こちらの学習のメモ書きとして、書いてます! public function edit($id) { $shop = Shop::findOrFail($id); return view('owner.shops.edit', …

【Laravel 10:エラー】Base table or view not found: Table

エラー: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'laravel_umarche.app\http\controllers\admin\owners' doesn't exist 解決方法: OwnersController.php store()の中の 修正前:'email' => ['required', 'string', 'lowercase', 'emai…

Laravel:Carbon, Tailwind CSSが反映されない

Carbon phpのDateTimeの拡張ライブラリ。 Tailwind CSSが反映されない 色々いじって、地道に CSSを自分で当て込めてましたが、Laravel 10 において、 Tailwind CSS を反映させるには、$ npm run devを実行している状態で $ php artisan serveを実行しないと…

Laravel:Eloquent

Eloquent(エロクエント) .NET Core MVC で当てはめるとしたら、Serviceだなと思いました。 Controllerに記述すると書いてあるけど、こちらの参考サイトの内容だと、いわゆる「CRUD機能」の内容で、 それはつまり、Service に書くことですね。 というか、公…

Lravel

ファイル生成コマンド:php artisan make:[Hoge] <クラス名> [Hoge]:これを以下のどれかにはてはめる Controller Model Migration Request etc ルート設定 User Admin Owner 上記3つのアカウントログイン機能(マルチログイン)を設定する手順 routesフォル…

エラー:Djangoにて、CSSファイルが読み込まれない

static/hoge/style.css ファイルが、index.htmlに反映されない 何回見直しても、style.css を読み込ませるパスに間違いはないし、ファイル名のタイポもなかったです。 なんだかんだこれに、3時間は費やしました。 【結論】 setting.pyにおいて staticfileを…

Hoembrew を久しぶりに install するときは、uninstall してから install し直すのが正解!

久しぶりに、homebrew をインストールしようとしたら、以下のエラーになった。。。 ~ % /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" ==> Checking for `sudo` access (which may request your passwo…

MAMPを使って、phpMyAdmin というクライアントツールを起動、DB作成までの手順。

こちらのサイトで、SQLの練習をしたいけど、 そもそものSQLを実行する環境構築に手間とりました。 結論としては、 MAMPをインストール phpMyAdmin を開く データーベース名:worldcup2014 を作成 worldcup2014.sql ファイルをインポート で完了。 MAMP のイ…

Mac M2:MySQL クライアントツールである、Workbench は、どちらをダウンロードすべき?答え:arm

SQLの学習目的で、DBを触りたいので、クライアントツールをダウンロードしようと思いましたが、どれをダウンロードすべきか悩んでいました。 調べると、MySQL Workbenchがでてきて「あ!これ使ったことあるわ!」と思いダウンロードしようとページに飛びまし…

C# CASEを使って、値を変換して DataGridView 出力する

DBから、SQLを使ってデータを取得して、その中のある列の値を条件のもと変換して 出力する方法 条件分岐は、CASE WHEN THEN SELECT 表示したい列名, 表示したい列名 ( CASE 列名 WHEN 列名の値 THEN 変換値 END ) AS 変換値を表示したい列名 FROM テーブル名

研修にて学んだ事:作業の進め方

やりたいことを文章化する 頭の中が整理されて、何に疑問を覚えているか客観視できる それにより、何を検索・質問すればよいか明確になっていく SQL文を書くときは、一つの最小限のデータを使って、操作すること。 SQL分を使うときは、クライアントツールを…

PHP:例外処理 = 404 Not Found の実装

例外処理:アクセス先が、存在しないURLの場合の対応 「404 Not Found」を表示させる 実装理由:エラーごとに処理を変えたいから 「Exceptionクラス」は、PHPのエラー(例外)処理の「親」 try { // 例外処理:404 Not Found if (!$params) { throw new HttpNo…

SQL:プレースホルダ、バインド

$mysqli = new mysqli('接続先のMySQLサーバの[ホスト名]or[IPアドレス]', 'MySQLサーバに接続する時の[ユーザ名]', 'MySQLサーバに接続する時の[パスワード]', '[接続先のサーバ名]'); $mysqli = new mysqli('db', 'test_user', 'pass', 'test_database'); …

SQL;トランザクション、ロック(制御)

トランザクションとは? データの整合性を保つ方法 ロック:同時実行制御 複数ユーザーが同時に、クエリを実行してDBのデータのを書き換えると、 エラー(クラッシュ)を招く可能性があるため、ロックをかけて他のユーザーが クエリを実行できないようにする仕…

SQL:条件分岐、CASE式

条件分岐:CASE式 UNION ALL こちらを使っても条件式を書けるが、テーブルを2回読み込むので、 処理速度が落ちるため、パフォーマンスの観点から良くない。 CASE こちらは、UNION ALL を向上させたもの。 こちらを使うのが通説。 SELECT emp_no, birth_date,…

SQL:実行計画

EXPLAIN <クエリ>; 実行するクエリの実行計画を確認する。 目的:クエリが高速かどうか確認するため mysql> EXPLAIN SELECT -> COUNT(*) -> FROM -> employees\G *************************** 1. row *************************** id: 1 select_type: SIMPLE…

SQL:インデックス

インデックスの作成・確認・削除 # 作成 : 30秒ほど時間がかかる $ CREATE INDEX <インデックス名> ON <テーブル名> (カラム名); $ CREATE INDEX salary_index ON salaries (salary); mysql> CREATE INDEX salary_index ON salaries (salary); Query OK, 0 …

DB設計:正規化

エンティティ(実体) 例:美容院 予約システム 画面図などを使って、仕様を決める 画面図や仕様書を見ながら、何をデータとして保存するか列挙していく。 列挙したデータを種類ごとに分ける。 店名 時間帯 美容師 コース システム側が事前に用意するもの 店…

SQL:言語化してみた

SELECT COUNT(*) FROM employees; 言語化すると => employees テーブルにおいて、いくつ行数があるか、数える SELECT COUNT(*) FROM current_dept_emp WHERE to_date = '9999-01-01'; 言語化すると => current_dept_emp テーブルにおいて、to_date 値が、999…

SQL:相関サブクエリ, コメント

### SQL 読み込まれる順番 1. FROM: クエリの対象となるテーブル(またはビュー)を指定 2. WHERE: 条件に基づいて行を取得 3. GROUP BY: グループ化の基準となる列を指定 4. HAVING: GROUP BY で取得した結果をさらに 絞る 5. SELECT: フィルタリングおよび…

SQL:テーブル結合

テーブル結合 INNER JOIN:内部結合(共通部分のみ) データがある列のみ結合 外部結合より、高速 $ SELECT <列名>, ... FROM <テーブル名1> INNER JOIN <テーブル名2> ON <テーブル名1.列名> = <テーブル名2.列名>; AS構文: hoge AS a これの意味は、hoge …

Git stash

$ git stash:一時的に避難して、他のブランチで作業をしたい時に使う。 $ git commit前に、$ git stashを打つ $ git stash list:git stash した作業 一覧を表示するコマンド $ git stash apply:最新の作業 を復元する 特定の作業を復元:$ git stash appl…

SQL:SELECT 構文 part2

ORDER BY 句:検索結果を並び替える $ SELECT * FROM employees ORDER BY <整列キー> <ASC/DESC>; ASC は、省略可能。デフォルト値のため。 また、複数条件を指定することも可能。 $ SELECT * FROM employees ORDER BY birth_date DESC, hire_date ASC; 誕生日が大きい</asc/desc>…

スマホ買うなら、セキュリティアップデート保証期限を気にしよう!

pixel 3a 使ってますが、2022年の春に保証期限が終了してました。。。 とはいえ、次買うのは、ストレージの容量的には、2024年の夏になるだろうなと。 Google Pixel のアップデートが提供されるタイミング 5a を次は、購入しようと考えていましたが、アップ…

SQL:SELECT 構文

データ検索 SELECT 構文は、指定した「列のデータ」を操作する。 SELECT <列名> AS <別列名>, ...:指定した列名に別名をつける $ SELECT COUNT(id) AS number FROM entries; 日本語は、"" をつける $ SELECT COUNT(id) AS "応募数" FROM entries; SELECT DI…

MySQLとSQL

MySQLは、3段階層になっている Database -> Table -> Data SQL構文 予約語/関数は、大文字で書く。 特定の予約後の後は、改行する。 SELECT, FROM, WHERE, GROUP BY, ORDER BY 1,2 に関してだが、書き方を統一するのが大切。 SELECT name FROM companies; or…

Devcontainer:VSCode と Dockerコンテナを同期して、実行やデバッグをしやすくする

Devcontainer は、VSCodeの拡張機能。 VSCodeで、「>< Remote Development」をインストールする。 Remote Developmentの設定は、「.devcontainer/devcontainer.json」で行う。 .devcontainer/devcontainer.json の中身(PHP, apache) { "name": "何でも良い…

docker-compose:操作

$ docker-compose up:コンテナの作成と起動を一度に実行するコマンド - dオプション:バックグランドで起動する(detach) --build:イメージからビルドし直す。 $ docker-compose upは、イメージが作成されていない場合、イメージの作成からビルドされるが…

PHP:クラスを使ってみたpart4

/* 2. "a" を 1、"b" を 2、...、"z" を 26 として、文字列を数列に変換します。この数列を A($baseArr) とします。 3. 数列 A の隣り合う 2 つの数を足して前から順番に並べた新しい数列 A' を作り、これを新たに A とします。 このとき、A の要素の大きさ…