CodeLab

GitHub

GitHub ActionsでPHPのバージョンを指定する方法

GitHub ActionsでLaravelのバックエンドをデプロイしているのですが、突然デプロイできなくなった問題に遭遇した時の忘備録です。 原因 原因は、デプロイする環境(runner)にインストールされているPHPのバージョンが変わっ...
Laravel

Laravelのリレーション先のモデルを取得するときは基本的にはwithを使え

Laravelでリレーション先のモデルを結合して受け取る方法は3種類ありますが、リレーション先のモデルを効率的に取得するために、withメソッドを使用することが推奨されています。 なぜでしょうか? withメソッドを使ってアクセスする wi...
Node.js

MacのNode.jsをnodebrewで切り替えできるようにする

nodebrewのインストール nodebrewのインストール方法は以下の通りです: ターミナルを開きます。 ターミナルで以下のコマンドを実行します: curl -L git.io/nodebrew | perl - setup インストー...
Laravel

laravel Eloquent updateOrCreate()でmodelを更新する

LaravelのupdateOrCreateメソッドは、指定した条件に基づいてデータベース内のレコードを更新するか、存在しない場合は新しいレコードを作成します。 このメソッドは非常に便利で、以下のようなシナリオで使用することができます。 既...
AWS

terraformのbackend設定内で変数を使う

tfstateファイルをS3で管理する場合は、バックエンドの設定を行います。この際、バケット名やキー名を変数管理したいと思うことでしょう。 しかし、結論から言って、Terraformのbackend設定では、直接的な変数の使用はサポートされ...
Git

GitHub Copilotが使えない

VSCodeでGitHub Copilotを使おうとしたときに、下記のエラーになる場合の対処 GitHub Copilot could not connect to server. Extension activation failed: ...
Laravel

laravelのcollectionでfilterを使った時はかならずvalues()を呼ぶ

laravelのcollectionでfilterを使って絞り込んだときは、必ずvalues()を呼びましょう。 こんな感じに。 $new = array.filter(function(value){ return (何か条件式); })...
Docker

The requested image’s platform (linux/amd64) does not match the detected host platform.

M1/M2でdockerを動かしていると、 Docker on Mac M1 gives: "The requested image's platform (linux/amd64) does not match the detected ...
AWS

tfenvによるTerraformインストール(for MacOS)

Terraformは、AWSやGCPなどの環境構築をコード化&自動化&デプロイするツールです。 今回はこちらのインストール方法を紹介します。 Terraformは複数バージョンが存在しますので、それらを簡単に切り替えられるtfenv経由での...
AWS

AWS CLIのPROFILE切り替え

aws cli では、複数のプロファイルを切り替えることができます。 以下のようなコマンドで、プロファイルを作成できます。 $ aws configure この場合は、ランダムな値のプロファイル名ができますが、プロファイル名を指定したい場合...
javascript

JavaScriptの連想配列

JavaScriptの配列 まず、普通の配列はキーが数字のものを指し const array = ; こんな感じで書けますが、実は console.log(array instanceof Object); //true console.l...
雑談

フリーランスの受託開発の問題点は

フリーランスの受託開発はオワコンなのか? フリーランスになってから10年以上経ちました。 今までは、受託開発中心で、補助として開発会社から一部業務を請負する形式で仕事をしていました。 フリーランスになってすぐは、クラウド系の仕事受発注サイト...
AWS

[aws-sdk]AssumeRoleで受け取ったCredentialsはキャッシュして使う

AWSで、別のアカウントにあるリソースを使いたい場合、StsClientのAssumeRoleを使ってcredentialを取得して、そのもらったCredentialを使ってアクセスすることで実現できますが、いくつかハマった点がありましたの...
Laravel

Eloquentの便利機能

Eloquentとは Laravel Eloquentは、PHP構文を使用してデータベースとやりとりすることができるORM(Object-Relational Mapping)です。データベースとの作業に対してシンプルなAPIを提供し、開発...
AWS

aws cognito マジで使えない

認証サービスとしてfirebaseと並んで有名なAWSのcognito。 最近いろいろいじっているのですが、正直かなり使い勝手が悪いです。 結論から言って、ちゃんと使用を理解してから設計しないと、後々面倒なことになります。 使うのであれば、...
開発

[Laravel]POST時の自動トリミングや空文字のNull変換をやめさせる

フォームからのPOST時に空欄で入力したら勝手にNullに変換されてしまう。 また、文字列の前後の空白が削除されてしまう。 この2点を解除します。 結論としては、app/Http/Kernel.phpの下記のmiddleware登録をコメン...
AWS

amazon linux 2023でhttpd(apache)をインストールしてみる

amazon linux 2023が使えるようになったので、apacheを入れてみました。 結論から言うと、以前のバージョンと特に変わることはありません。CentOSとかRedHatとかと同じ系統のディストリビューションです。 インスタンス...
AWS

awsのec2の初回rootパスワード

Amazon Linux2023 が公開されたので、ちょっと試してみようかなとおもってとりあえず、インスタンスを起動してec2-userでログイン $ ssh ec2-user@xxx.xxx.xxx.xxx -i key.pem で、とり...
Webビジネス

フリーランス&アプリ開発は届け出しないと違法!?

開業届&青色申告 これはまぁ普通ですね。違法というわけではないですが、納税はしないと脱税になってしまいます。 確定申告は白と青がありますが、基本的に青色のほうが有利ですので、青色申告での納税を考えましょう。 電気通信事業者 意外と落とし穴な...
AI

ついに誕生!Notion AI正式リリース。NotionAIのここがすごい

イントロダクション こんにちは!Notion AIは、最近リリースされたAIベースのプラットフォームです。このプラットフォームは、ビジネスプロセスを自動化し、タスクを迅速かつ正確に実行できるようにすることを目的としています。この記事では、N...