開発

開発

GitHubで2つのアカウントのSSH鍵を使い分ける方法

GitHubで複数のアカウントを使い分けたい場合のやり方の解説です。 GitHubとしては、複数アカウントでの接続は推奨していませんが、組織として会社のアカウントを使うという方針の場合は仕方がありませんので何とかするしかありません。 方法と...
Docker

Linux環境ではhost.docker.internalは使えない

host.docker.internaはDockerコンテナ内からホストPCを示す名称です。 ですが、これはMacとWindowsだけでLinuxでは使えません。また、WSL上で動かす場合もLinuxと同じ扱いになるため使えません。 という...
Docker

Node.JS v.17でERR_OSSL_EVP_UNSUPPORTED

node.jsの最新dockerイメージでVue.JSを起動させようとしたら、以下のようなエラーになった Error: error:0308010C:digital envelope routines::unsupported at new...
Laravel8.x

Laravel sailでLaravel開発&デバッグ環境構築

動作環境 今回の環境は以下の通り Ubuntu Docker(インストール済み) 作業環境は Windows10Pro VSCode DockerDesktop 今回は、Ubuntu上で構築したDocker環境を、Windows10から接続...
PHP

VSCodeにコンテナ内のPHPを指定する方法

VSCodeでPHP IntelliSenseを有効化すると、こんな画面が表示される場合があります。 通常はsetting.jsonにphpのバイナリがある場所を指定すればOKです。 ですがPHPをDockerで動かしている場合、そもそもロ...
MacOS

[Xcode12]Storyboardはどこへ行った?

iOSアプリの初心者向け解説で必ず解説される、Storyboardを用いた方法ですが、Xcodeのバージョンが変わった際にデフォルトが変わってしまったため、解説書などの通りにできなくなってしまった様です。 Single View APPがな...
Unity

[Unity]FPSなどでの移動方向の取得方法

FPSでカメラやキャラクターの移動方向をtransform.fowardで取得して加算する方法が良く紹介されています。 例えばこんな感じ。 camはカメラのGameObjcetです。 x = Input.GetAxisRaw("Horizo...
Unity

Unityでなんかおかしくなった場合の直し方

Unityの統合環境は非常によくできているのですが、機能が多すぎていろいろいじっているうちに設定が変わってしまってどこを直したら元に戻るのかわからなくなってしまうことが良くあります。 そういった場合によくあるパターンと治し方を解説します。 ...
BootStrap

CakePHP4にBootstrap4を組み込んでみる

CakePHP4にBootstrap4を組み込む方法はいくつかあるかと思います。 単純に、Bootstrapをダウンロードしてきて、webrootに配置。layoutファイルなどで読みこませるだけでも使うことは可能ですが、今回はプラグインを...
CakePHP3.x

コントローラーから直接画像を出力させる

今回は、コントローラーから画像を出力させる方法をご紹介します。 画像をファイル出力してリンクさせる方法もありますが、一時的な画像の場合は後処理が面倒です。 そこで今回は直接レスポンスでバイナリを返すという方法をご紹介します。 なお、テキスト...
CakePHP3.x

[CakePHP4]途中で追加したカラムが保存されない

Modelの設計を行っているときに、途中でカラムを追加するというようなことはよく発生すると思います。 ですが、たまに追加したカラムがなぜか保存されないという問題が発生します。 この問題は、だいたいはEntityの$_accessibleプロ...
CakePHP3.x

[CakePHP4]migration_diff しても差分が認識されない

テーブル定義を直接変更した後にmigration_diffコマンドを使うと差分を認識してMigrationファイルを自動生成してくれる便利な機能があります。 ./bin/cake bake migration_diff (設定名) ですが、...
Webビジネス

フルスタックエンジニアを批判する人たちの危うさ

自称、底辺フルスタックエンジニアのCodeLabです。 最近、Twitterなどを見るとフルスタックエンジニアを批判している人が結構います。 フルスタックエンジニアってそんなにダメなんでしょうか? 何がダメで、なぜそのような思考になるのかを...
CakePHP3.x

エラー画面のレイアウトを変更する

CakePHP4でレイアウト、つまり大枠の部分のデザインテンプレートは、デフォルトでは template/layout/default.php が使われます。 これは、レイアウトファイルといわれていますが、デフォルトのレイアウトファイルを変...
CakePHP3.x

[CakePHP4]Queryからの日付取得

CakePHP4でqueryからカラムの日付をstrtotime()で変換しようとしたら以下のようなエラーになります。 strtotime() expects parameter 1 to be string, object given 以...
開発

Cakeで行ロックを使う方法

CakePHP4系で行ロックを使う方法です。 あんまり指摘している記事がなかったので書いてみました。 具体的にはFOR UPDATEを使うのですが、どうやって呼ぶのか? 早速コードを見てみましょう //Tableクラス内などで use Ca...
CakePHP3.x

PHPのオブジェクトコピー

CakePHPのqueryビルダで、こんな感じで条件を変えて連続して結果を取得したいなぁ‥というとき。 例えばこんな感じのことをしたいとすると $query = $this->find()->where(共通の複雑な条件); $a = $q...
CakePHP3.x

Viewにセットした値をコントローラーで取得する

Viewにセットした値をコントローラーで取得する方法です。 古いバージョン(CakePHP2系) コントローラークラスにプロパティーがありますので、そこから取得が可能です。 $varname = $this->viewVars; 現行バージ...
CakePHP3.x

CakePHP4で動的生成しながらファイルダウンロード

CakePHP4でのファイルのダウンロード方法を解説します。 CakePHP3/4系での記事になります。 通常の方法 まずは、簡単なデータを一括で生成してからダウンロードさせる方法です。 $body = "あいうえお"; $filename...
CakePHP3.x

サーチプラグインでカラムを連結して検索したい

friendsofcake/search を使っての検索は非常に楽なんですが、いろいろわからない点が多いんですよね。 カラムを連結して検索する要件があたのですが、手間取ったので記事にしました。 CakePHP2の場合 CakePHP2の場合...