それマグで!

知識はカップより、マグでゆっくり頂きます。 takuya_1stのブログ

習慣に早くから配慮した者は、 おそらく人生の実りも大きい。

laravel

Laravel でイベントとハンドラを使って通知を送る

Laravel でイベントとハンドラを使って通知を送る イベント・リスナ イベント定義を使って、「なにか」が起きたとき「これをやる」を定義出来る。 ジョブキューで分割すると思いがちだけど、別にシングルスレッドで実行しても構わない。 シングルスレッドで…

laravel で通知(slack/mattermost)を試す。

laravel で通知(slack/mattermost)を試す。 laravel で slack に通知(メッセージ送信)をする。 slack 互換のapi がある、mattermostでも「内向きウェブフック」を使えば同じように通知が出来る。 準備 webhook incoming のアドレス(URL) composer でパッケ…

Laravelで通知(メール)を試す。

Laravelで通知(メール)を試す。 laravel でコマンドを作ってメールを送信する。 必要なもの SMTP/S接続情報 作るもの Notification クラス 通知を送信するコンソール・コマンド laravel 通知の流れ laravel 通知では、Notificationを実装したクラスをapp/n…

Laravel でログを、ターミナルに出す。

Laravel でログを、ターミナルに出す。 laravel のログを画面ではなくターミナルへ出力する事ができる。 またターミナルとファイルに出す事ができる。 ログとデバッグ dd とかよく使います。 dd( $model ); dump もよく使います。 dump( $model ); これはロ…

laravelでリクエスト内容を書き換える(rule適用前/適用後)

laravel でリクエスト内容を書き換える。 リクエストの内容を書き換えるのなら、フィルタやサービスでDIを思い浮かべるかもしれないが、もっと手軽にできる方法がある。 それは、FormRequest を使うことだった。ブラウザからのリクエストを集合体にできるFor…

laravel のdd をwordpressなど自分のプロジェクトでで使う。

laravel の dd だけを自分のプロジェクトで使う dd関数だけ切り出したパッケージがあるので、それを使えば、好きなプロジェクトファイルで dd 関数が使える。 composer require --dev larapack/dd 依存パッケージがあるので、composer で インストールする。…

laravelのジョブ・キュー・ワーカーを試す。

laravel ジョブ・キューモデル laravel には、ジョブ・ワーカーとキューがデフォルトで用意されています。 これを少し試してみました。 今回試すこと キューにジョブをいれて、ワーカーで処理をする。 queue でできること ジョブを待ち続けて実行する。 aris…

laravel のスケジュール実行とジョブと例外処理について調べておいた。

laravel のスケジュール実行 laravel で cron のようなジョブ実行ができる。cron書式で書いて旧世代のワタシに理解しやすくて便利そうなので、スケジュールをつかってcronを管理できたらいいなと思った laravel のスケジュールの流れ Kernel.phpに記述 artis…

phpでprotectedなメソッドにアクセスする。

phpでprotectedなメソッドにアクセスする。 この様なときに使う必要があった、laravelが持ってる protected な プロパティに強引にアクセスする。 laravelなどのフレームワークが内部に持ってるコールバックやプロパティを取り出して調べたり、意図通り、正…

WEBフォーム項目の連動項目でのバリデーションの一般的な解決法(laravelでの実装例)

Selectやラジオボタンのチェック項目よって、バリデーションが異なる場合。 根本問題としてそういうフォームを作るなと思うのですが。 直前の選択項目によって次の入力項目のバリデーションが異なることがある。 例 電話番号 固定電話と携帯電話で番号をバリ…

laravelの設定(config) のキャッシュと実行環境(テスト環境testing/local ) の関係

laravel の env / config の関係について。 env と configキャッシュで testing のデータベースが使われずにパニクった。 TL;DR .env.testing を使ってる場合、テスト実行する前には、cache:clearする。 laravel の実行環境と設定について 実行環境と設定は…

Laravel の通知でカスタムチャネルとカスタム通知を作ってみる

Laravel の通知でカスタムチャネルとカスタム通知を作ってみる 作ったもの 最初に知っておくこと laravel の通知の概要 通知するもの、通知されるもの、通知チャンネル(ドライバ) ユーザーに通知する箇所の概念的構造。 通知を送る例 通知するクラスは自分で…

laravel のマイグレーションで特定のmigration のファイル名指定して、一つだけ再度・何度も実行したい

laravel でmigrate するとき、特定のファイルだけを実行したい migrate refresh とかだと全部のテーブルが再生成されちゃうので、別のテーブルデータを消さずに特定のテーブルだけを再構築したい。 サンプル 指定したマイグレーションのファイルだけを実行す…

laravel の api ルートを叩いてもloginページやHTMLが帰ってきてjson以外になってしまう場合

TL;DR HTTPリクエストのヘッダに、 Accept: text/json が抜けている可能性が高い。 Laravelのレスポンスが login になる場合。 api で auth を入れているところへリクエスト投げつける。 HTMLのログインが帰ってくる。 実例 curl -H 'Content-Type: applicat…

laravel で phpunitのテスト実行時に、PhpStormからXdebugを有効にする。user.iniを有効にして実行

xdebug を有効にしてphpunitを実行したい。 Xdebug の設定をしたとしても、phpunit の設定だとか、xdebugや日付などの php.iniを作るのが不便。 プロジェクトを切り替える毎に、php.iniを見直すのは割と面倒くさい。 phpには user.iniがある php には実行時…

Laravel artisan serve で storageの画像が配信されない問題とか.user.iniでxdebugを有効にできない問題。

Laravelに移行中。 ローカル開発環境でデバッグしてると、Storageにツッコんだファイルが見れないので困ってた。 しょせん、PHPなので期待してはいけない。 よくある解決策 artisan storage:link これで、ストレージがリンクされるから見れるはずだよ。って…