Laravel 初期設定 DB Controller

設定内容 タイムゾーン 言語設定 デバッグバー DB設定 Controller 環境 Docker上でのLAMP環境 mysql5.7 phpmyadmin apache2.4 PHP 8.1.11 Laravel Framework 8.83.25 Laravel Breeze 1系の最新版 タイムゾーン、言語設定 'timezone' => 'Asia/Tokyo', エラー…

npm run devがvite laravel 9で機能しない

エラー内容 MAMP環境でlaravel breezeインストールcomposer require laravel/breeze:^1.13 --dev、npm run dev時にエラー owner@MacBook-Pro task_test % npm run dev > @ dev /Applications/MAMP/htdocs/laravel/task_test > vite /Applications/MAMP/htdoc…

LaravelのセッションとCookie,HTTP,CSRF

概要 cookie セッション HTTP ログイン ステートレス cookie cookieはPC上のブラウザごとに保存される情報、領域。 ブラウザを変えるとログイン情報は別のものになる。 ブラウザ上に保存されるので使用者は情報が見れる状態にあるのでパスワード保存はNG chr…

Dockerを使用してLAMP環境の構築(Laravel Breeze, Vue.js3)

環境構築 以下の環境をDockerで作成する。 mysql5.7 phpmyadmin apache2.4 PHP 8.1.11 Laravel Framework 8.83.25 Laravel Breeze 1系の最新版 vue@3.2.36 ディレクトリ構成 ディレクトリを作成し、docker-compose.ymlを作成。 laravelのソースをumarche/デ…

PHP Laravel マイグレーションエラー

migrate実行時以下エラー root@173e7a4d8070:/var/www/html# php artisan migrate The environment file is invalid! Failed to parse dotenv file. Encountered unexpected whitespace at [local APP_KEY=base64:247YHxa/kjduxtIvir2B4rNHR/VjYt1wj5/DE9pqk…

MySQL、Group by 集約関数、left join、right join

作成したテーブルを操作していく。 Group By Group Byとは、データを条件にしたがって集約するもの SELECTにGroup Byを付けることで、集約したいカラムをもとに、集約関数で合計や平均、最小値や最大値を設定できる。 selectとgroup byは1対1にしないといけ…

GUI,CUIでレコードをいれる、Joinでテーブルを結合、order byで並び替え

作成したテーブルにレコードをいれていく GUIではエクセルみたいにいれてApply押すだけ CUIではINSERTで作成 mysql> show tables; +---------------------+ | Tables_in_demo | +---------------------+ | db_ex_item | | db_ex_order_detail | | db_ex_user…

GUI、CUIでテーブルを作成

GUIでの作成 MySQLWorkbenchでのテーブル作成方法 以下のテーブルを作成する id(主キー) name adress 1 meo1 xxx-ttt 2 meo2 xxx-yyy 3 meo3 xxx-uuu id(主キー) name manufacture price 1 meo1 〇〇工場 1000 2 meo2 〇〇工場 222 3 meo3 〇〇工場 900 id(…

Java キャスト

キャストはint型からlong型、int型からstringなど型を変換するときに使う phpはキャスト成約がゆるいので注意する //キャストとは→型変換 int a = 100; long b = (long)a; (String s = (String)a; →"100" //php) String str; str.valueof(a); →"100" 変換し…

MySQL select where

DB構造 スキーマ各種→demoスキーマ →システムスキーマ→システムcfgスキーマテーブル(設定など) →テーブル各種 テーブル情報に対しての操作、レコード追加、編集、削除など行い さまざまなテーブルがjoinして出来上がる テーブルに含まれるカラム、レコード、…

Docker, Spring Boot, MySQL,Nginx開発環境

仕組み 自分のpcの中にlinuxで仮想的に3台のpcがdocker上で立ち上がってるイメージ。macの箱の中にdockerがインストールされている。 docker-compose up を実行することでこのwebコンテナ、アプリケーションコンテナ、データベースコンテナの3つが立ち上…

Java インターフェイス

interface(規約)は、クラスがどのようなメソッドを持っているのかを定義する設計書。 クラスとは違い、具体的な処理内容を記述せず、メソッドの引数や戻り値だけを定義する。 アクセス修飾子 interface インターフェイス名() 実装してほしいメソッド定数を…

Java 抽象

抽象/具象クラスの定義 抽象とは、着目すべき対象を具体的なモノから概念に切り替えること 継承と同じようにanimalクラス(親)を継承した子クラスhuman,catクラスという関係性を作る。 今回はabstractが追加されるので抽象クラス、抽象メソッドが要素として考…

Java継承とオーバーライド

animal,cat,humanの3つのクラスをつくる 継承元としてAnimalクラスを作り、cry,jumpメソッドを作成し振る舞いとしてうおおん、30cm飛ぶをいれる。 //継承元animalクラスにはcry,jumpメソッドを作成してる public class Animal{ public void cry() { System.o…

カプセル化、list、Java

カプセル化 クラス → インスタンス化(オブジェクト) :フィールド :メソッド →コンストラクタ(newインスタンス化されるタイミングで実行されるメソッド) 通常メソッド ゲッターセッター カプセル化とは オブジェクト内のクラスやメソッド、フィールドに…

プルリクエストしたらconflictだった場合

conflictの状態では他のブランチに切り替えることができない 以下エラーがでる。 error: you need to resolve your current index first $ git merge --abortでマージ前の状態に戻せばブランチの切り替えができるようになる。 owner@ownernoMacBook-Pro spri…

Javaオブジェクト指向

オブジェクト モノ、概念(人間、国、ノート、机、会社)存在するあらゆるものをオブジェクトと例える。 プログラムの機能や役割を区別してオブジェクトとして組み合わせることで1つのプログラムができる。 |人間というのは何で構成されてるか、それぞれの…

GithubFlow,issue

Git

githubで対象のリモートリポジトリに行ってisuueタブを開いて new issueからissueを作成。 #はissue番号(画像の#1) であり、ブランチやコミットメッセージで紐づけることができる。 issueに対応するブランチを切る $ git checkout -b 'refactoring' Switch…

.gitignore設定、リポジトリからディレクトリを削除

Git

大容量ファイルなど間違えてコミットしてしまい、後からgitの管理外にしてリポジトリを削除する。 .gitignoreファイルの作成 作成したいプロジェクトのディレクトリへ移動し、コマンドで作成 $ touch .gitignore 隠しファイルなので「⌘ + shift + .」で表示…

Linuxコマンド

よく使うコマンド コマンド 動作 pwd 現在のディレクトリ表示 cd ディレクトリ移動 ls ファイル、ディレクトリを一覧表示 rm ファイル、ディレクトリ削除 mkdir ディレクトリ作成 $mkdir file toutch ファイル作成 $touch file1.txt cp ファイル、ディレクト…

Vim操作

カーソル移動 コマンド 動作 k 上へ移動 l 右へ移動 h 左へ移動 j 下へ移動 操作 コマンド 動作 u 戻る w 単語移動 Ctrl+r 進む $ 行末へ移動 x 1文字削除 0 行頭へ移動 dd 行削除 - 文字の先頭へ移動 yy 1行コピー gg ファイル先頭へ移動 p ペースト G ファ…

gitpushがrejectされた場合

背景 リモートへpushしたときに以下エラー リモートでreadmeファイルを作成した状態でローカルをpushしてしまったことが原因だと考えられる。 Note about fast-forwardsは mainブランチのリモートとローカルの最新情報が異なっているので、通常のpushが行え…

Githubに100MB以上のファイルをpushするとエラーになる

背景 間違えてバックアップしたzipファイルをpushしてしまい容量が100MB超えてた為、エラーになった。 pushしたディレクトリ内に、100MBを超えるファイルがあるからエラーがでる Githubでは、100MBを超えるファイルはアップロードできない warningは、50MBを…

リモートリポジトリの変更

Git

リモートリポジトリをgithubで作成 git remoteをする 新しいリモートを追加するには、実際の作業フォルダへ行き、以下のコマンドを実行 $ git remote add origin [リポジトリURL]https://github.com/ユーザ名/.git 削除する場合は以下を実行 $ git remote rm…

git初期化

Git

リポジトリの作成 # Gitリポジトリの作成 $ git init Initialized empty Git repository in /Users/owner/mysite/blog/.git/ # カレントディレクトリに.gitディレクトリが作られる $ ls -l .git total 24 -rw-r--r-- 1 owner staff 23 5 22 19:01 HEAD -rw-r…

Rails new~ ログイン機能まで

Rails new ディレクトリ作成 rails newコマンドでアプリの雛形を作成 バージョンを指定しないとインストールされている最新のrailsのバージョンでアプリが作成される $ rails _railsのバージョン_ new アプリケーション名 $ rails new Board_app -d -dオプシ…

Rspecの修正

TODO ローカル変数ではなく let を使用する letを使用してprojectとtaskの変数を共通化し、visitの引数で呼び出す。 RSpec.describe 'Task', type: :system do let(:project) { create(:project) } let(:task) { create(:task) } let(:done) { create(:task,…

system spec

gemの導入 group :development, :test do gem 'byebug', platforms: %i[mri mingw x64_mingw] gem 'factory_bot_rails' gem 'rspec-rails', '~> 5.0.0' gem 'webdrivers' gem 'capybara' end rspecでcapybaraを使うために必要な機能を読み込む require 'capy…

Model Spec

概要 taskモデルのバリデーションに関するテストを作成する。 FactoryBotを使用しテストデータを作成する。 バリデーションエラーの発生と、エラーメッセージの内容を表示させる。 各バリデーションを削除した際、テストが失敗することを確認する。 FactoryB…

rspecセットアップ

概要 GitHubからサンプルアプリを fork, clone 後、ローカルでのrspec実行環境をセットアップする。 ローカルへのコピー GitHubからサンプルアプリをforkし、ターミナルからcloneする。$ git clone URL新たなブランチの作成$ git checkout -b ブランチ名 セ…