[Laravel] シングルアクションコントローラで責務を分割する
導入 Laravelでルートに関する処理を記述する場合、以下のように操作する対象のオブジェクト毎にコントローラクラスを生成し、ルート毎にメソッドを作るのが一般的かと思います。 namespace...
19 search resultsShowing 1~19 results
You need to log-in
導入 Laravelでルートに関する処理を記述する場合、以下のように操作する対象のオブジェクト毎にコントローラクラスを生成し、ルート毎にメソッドを作るのが一般的かと思います。 namespace...
「依存性の注入」(Dependency injection) をご存知でしょうか。あるクラスが依存している別のオブジェクトを外部から渡すことで、クラス間の依存度を下げる設計パターンです。 Lar...
Laravelにおいて、あるルートはAjaxの場合のみ通したい、 さらにphpunitでAjaxのルートもテストしたい、という状況が発生したため、 その方法を考えてみました。 (確認環境:Lar...
ファーストクラスコレクションを用いてコードをリファクタリングする過程を、順を追ってみていきましょう。 書店に貯蔵されている書籍の管理をするシステムを考えます。 データストアには複数の書籍データが...
「PHPにおいてコンストラクタのアクセス権はpublicである必要がある」とする記事をいくつか見かけたのですが、これは誤りです。 (例)https://laraweb.net/surroundi...
動的whereとは LaravelのEloquentで条件を指定したい場合、通常は以下のように3つの引数(カラム名、演算子、値)を渡す必要があります。 //名前が「fuga」で、年齢が30歳のレ...
ルートパラメータで取得したIDがマスタに存在しない場合はエラーで落としたい。 そんなときのメモ。 例えば以下のようなルーティングを設定していた場合、 Route::get('/example/{...
Qiitaの記事URLをslackに貼ると、概要を自動で取得してプレビューを表示してくれます。 技術情報を共有する際に便利な機能ですが、中には展開されない記事もあるようです。 同じサイトなのにな...
※Windowsのキーで説明します。Macの方は適宜置き換えてください。 事前状態 HogeManager class HogeManager { } FugaRepository class ...
BotKitでのメッセージ送信には以下の2種類があります。 ユーザーメッセージに反応 タイマーや外部からのwebhookなどに対応 前者はユーザーメッセージに対して返信する形になりますが、 後者...
ビューコンポーザは、表示に必要なデータの取得処理をコントローラ等から切り出して定義できるLaravelの機能です。 詳細はドキュメントをご参照ください。 英語:https://laravel.c...
SlackのURL展開条件おさらい 前回、Qiitaの記事がSlackで展開されない理由を調べ、 og:descriptionにHTMLタグが混じるとプレビューが展開されないという事実が判明しま...
AmazonSNSとは、Amazonが提供するPUSH型通知サービスです。 多数のユーザーに対してメールやPUSH通知を送る以外に、 他のAWSサービスからの通知を受け取り、特定のエンドポイント...
最初に時間をかけて良い名前を考えるべき 変数やメソッド、テーブルやリポジトリの名前をどう決めてますか? 慣れている人なら、後々影響を与えないように慎重に名前を考えると思います。 しかし、名前にま...
CodeDeployは、AWSが提供しているデプロイ用サービスです。 業務でデプロイ環境構築に使ってみたところ、結構便利で使いやすかったので、 布教のような記事を書いてみます。 (細かい設定方法...
Laravelのファイルストレージ、便利ですね。 s3、FTPなど様々なファイルシステムを同じインターフェースで扱うことができます。 元からローカル、Amazon S3、rackspaceなどの...
number_format()は、 数値に3桁ずつカンマを挿入してくれるPHPの関数です。 これをJavaScriptで実現する関数を作ってみました。 整数だけだったら正規表現でなんとかなるんで...
概要 Laravelには静的なファイルへのURLを生成するassetというヘルパー関数が存在し、 普通に使うとWEBサーバーと同じ場所(オリジン)でパスを生成してくれます。 {{asset('c...
OS:Windows10 64bit vagrantを1.9.3にアップデート後、 いつものようにhomesteadを起動しようとすると、 homestead up in `initialize...
19 search resultsShowing 1~19 results
Qiita is a knowledge sharing service for engineers.