全てのページで同じような処理を行う場合、各コントロールの__constructに実装するより、Middlewareとして実装した方が便利です。 Middlewareを使えば、値を追加したり、コントローラの処理をする前にリダイレクトさせる事が可能です。 今回は、リダイレクト…
プレーンなjavascriptで、押されたボタンを基準に同じグループ内の特定の要素を取得する方法。 とても初歩的ですが、久しぶりにプレーンなjsを触ると忘れているので備忘録として。 See the Pen parent selecter by shibainu (@websandbag) on CodePen.
システムを実装する上で、個人情報の暗号化は必ず対応すべき事です。 Laravelの場合、エンクリプタが用意されていますので処理自体は非常に簡単です。 readouble.com しかし、ルートやキー毎に手動で暗号化と復号化処理を入れるのは手間です。 さて、 今回は…
現在ページの位置情報をフロントに反映させるという場面があります。 現在のURLを取得して解析する事自体は、jsでもphpでも可能なのですが、処理の記述が長くなってしまいがちです。 パンくずであれば、laravel-breadcrumbsというライブラリがあります。 pac…
Laravelの.envファイル内で半角スペースを入れたい場合の対応方法です。 状況 アプリケーションの名前に該当するAPP_NAMEに下記のように設定しました。 APP_NAME=テスト タイトル view内で、次のようにh1にAPP_NAMEの設定値を表示できるようにします。 <h1>{{ co</h1>…
2018年9月にリリースした5.7以降、Laravelの未認証時のリダイレクトを実装する方法が変わりました。 バージョン5.6以前は、app/Exceptions/Handler.phpのunauthenticated関数を使っており、最近でもその方法で解説する記事も多いです。 今回は、5.7以降の実…
テンプレートエンジンにpug(jade)を使う場合、テンプレートのタグ属性にPHPの処理を入れるのにコツがいります。 環境 pugテンプレートのコンパイルはwebpackに任せます。 Laravelのプロジェクトを作るとデフォルトでlaravel-mix.jsと言うwebpackの設定ファイ…
Laravelの機能やPHPの組み合わせれば大概の機能は実装できますし、Laravel側で仕様が決まっているので綺麗にかけます。 しかし、時には再現できない機能を実現するために自分でクラスを書いて追加したい時があります。 Laravelの場合、php artisanで関連する…
久しぶりにLaravelで新しいプロジェクトを作ったのですが、migrateの仕様が変わった部分があったので記事にしてみます。 環境 種類 バージョン laravel 5.8 migrate:modelでマイグレーションファイルも一緒に作った時の挙動について モデルを作成と一緒にマ…
開発環境の構築でコンテナを組み合わせて使うことが多いのですが、実際の確認環境にも使用してみようと考えてみました。 今回はAWSの環境にDockerでコンテナを管理する構成をしてみようと思います。 その際に、コンテナの管理をAmazon Elastic Container Reg…
以前、LaravelのMySQL8.0はサポートしていないという記事を書きました。 blog.websandbag.com 2019年6月現在でも状況は同じようです。 認証方式がcaching_sha2_passwordが対応していないのが原因です。 PDOException::("PDO::__construct(): The server requ…
Webアプリケーションの環境構築する場合、データベースのコンテナとしてはMySQLのイメージを使う事があります。 hub.docker.com MySQLのイメージからコンテナを作る場合、docker-compose.ymlのenviromentを設定すれば、データベースとアカウントを初期投入す…
MySQLのイメージを5.7と8.0に切り替えた所、MySQLのコンテナが起動できないエラーが発生しましたので、その時の対処方法を記載します。 おそらく、稼働中にMySQLのバージョンを5系からアップグレードしたい場合でも発生する可能性があります。 目次 目次 状…
プロジェクト管理をツールを検討すると、Redmineの名前はよく上がります。 redmine.jp 同じようなサービスにBacklogやAsanaのようなツールがあります。 しかし、無償だけでは不十分だったり、機能を追加しようとすると維持費が割と高いのが悩ましい所です。 …
確定申告のために、PaSoRiを購入された方もおられるのではないでしょうか? あれを他の事にも利用できないかと考えたことは無いでしょうか? ソニー SONY 非接触ICカードリーダー/ライター PaSoRi RC-S380出版社/メーカー: ソニー(SONY)発売日: 2012/10/10メ…
久しぶりにUnityを触るので復習がてら公式のチュートリアルをやってみました。 その際、シーンを再読み込みするとDirectionalLightが効かない状態になるバグに遭遇しました。 バグの解決方法を載せます。 状況 公式のチュートリアルを参考に勧めましたので、…
前回投稿したWebフォントの応用になりますが、はてなブログにもWebフォントを追加する事が可能です。 blog.websandbag.com ドメインやページビュー数の縛りが無くなったので、気兼ねなく使えます。 今回は、テーマ本体のスタイルはそのままにして、フォント…
最近は、Webフォントありきのウェブサイトも多くなってきました。 以前は、デザイン上、デバイスフォントではない場所を画像文字で代用する事がよくありましたが、alt属性をつける必要があったり、文字サイズの変更に耐えられなかったりコーディング側の負荷…
ゲーム依存症は、病気認定されるほど深刻な社会問題になっています。 style.nikkei.com ソシャゲを辞められない原因の一つに、辞め方が複雑というのがあると思います。 ソシャゲに限った話ではありませんが、サービスの辞め方は複雑なものが多く、途中で断念…
WordPress主体のサイトで、WordPressにはない機能を追加したい場合があります。 おそらくですが… 固定ページやテーマのfunction.php等を駆使すれば、大概のアプリケーションは作成できます。 しかし、組み込む事で難易度が上がったり、保守性が落ちる事が考…
最近、salesforceからデータを取得する機会がありました。 developer.salesforce.com salesforceのAPIの仲介をするライブラリがあるか探してみたのですが、あまり情報がありませんでした。 ありました。 toolkitと呼ばれるライブラリ集が公開されています。 …
自動更新ではなく、手動更新する場合の方法です。 記事内で紹介するページについて 本来の公式ページは下記になりますが、ドキュメントは英語です。 letsencrypt.org 本記事では、日本語で和約している下記のサイトから引用します。 非公式と書かれておりま…
2018年9月にOmniFocus3がリリースされました。 www.omnigroup.com OmniFocus2を使っていたため、OmniFocus3へのアップグレードする事にしました。 その際に、データを移行する必要があったため移行手順を記載します。 OmniSyncServerのアカウント作成 OmniFo…
最近サーバーの復旧作業を行う機会がありました。 原因は恐らくメモリ不足です。 過去のアクセス数がわかる情報が無かったため最小の構成で構築しましたが、実際に稼働させて見ると耐えられないほどのユーザーが訪れたようです。 冗長化は重要ですね。 さて…
最近、PCが破損してしまい色々環境設定をし直しています。 備忘録として記載します。 Laravelのインストールの手順に載っている、laravelコマンドを実行する時にも使います。 インストール 5.5 Laravel 今回は、composer経由でインストールしたlaravelを実行…
docker hubで配布しているコンテナのイメージについて調査したい時があります。 しかし、調査するだけで開発環境(ローカル)に保持する程の事もない時もあります。 今回は、一時的にコンテナを作る方法について記載します。 方法 開発環境にコンテナを作る…
Dockerでlamp環境を構築しようとする場合、個人の方が公開されている情報が多くとても助かります。 案件によっては、phpで暗号化、複合化が必要になるケースも出てきます。 実現する方法を探していると、Dockerfileに下記と追加すればmcryptが使えるという情…
Dockerを立ち上げた際、同時に初期データを投入する方法です。 初期データの投入方法 今回は、公式のMariaDBコンテナを使います。 Docker SecretsのInitializing a fresh instanceの項に、次のように記載されています。 https://hub.docker.com/_/mariadb/ I…
固有な情報を扱う場合、変数(あるいは定数)にしてページの上部に書いて目立つようにするという事をよくやります。 しかし、ファイル間共有する時にこの要領でそれぞれのファイルに追記してしまう方法はお勧めできません。 修正し忘れのファイルがあって事…
連想配列から特定のキーが指定した値に合致した配列のみ取得する方法です。 また、重複しない要素(例えばID等)の場合、結果は0か1のはずです。 そのため、最初一件のみ変数に代入する方法についてまとめます。 元データ [ { "id": 1, "name": "name_1" }, …