古いレコードをプルーンします
古くなってもう要らないDBレコードを削除することを、プルーン(prune)あるいはパージ(purge)などと言います。カスタムのArtisanのコマンドを書いて処理してもいいのだけれど、LaravelではこれがModelの中であるトレイトを使うだけで、組織的できてしまいます。
古くなってもう要らないDBレコードを削除することを、プルーン(prune)あるいはパージ(purge)などと言います。カスタムのArtisanのコマンドを書いて処理してもいいのだけれど、LaravelではこれがModelの中であるトレイトを使うだけで、組織的できてしまいます。
以前に「Laravelへの移行」と称してLaravelのスターターパッケージを2つ紹介しました。スターターパッケージとはすでにある程度デザインや機能が揃っていて、時間がかかる最初のプロジェクトの立ち上げをかなり減少してくれるものです。そからまだ2年も経過していないのですが、その間Bootstrapは4から5になるし、Tailwindが知られてくるようになりつつあり、フロントエンドのフレームワークの更新の時期となりました。今回は、それらを簡単にインストールできるLaraスターターの紹介です。
「ページネーションのデータを変える」の続きです。検索画面を用意して検索結果をページネーションします。
L6以来のLTSという事で待望の(?)Laravel9がリリースされました。という事で早速installを試してみます。
例えば、User::paginate(5)で返されるデータは、@foreachでループできるゆえにコレクションと思いきや、そうでありません。
先日に作成した生SQL文の実行クエリの機能を使用しています。重宝していますが、SQL文が複雑になってくると括弧が多くなってきたりして、わかりづらくなってきます。PHPのコードやHTMLソースと同じようなもので、SQL文の整形の機能が必要です。探したらまさにそのパッケージありました。
以前にEloquentの出力のチャンキングを紹介しました。処理中のメモリーの使用量を減らすためのチャンキングですが、実行速度が遅いということでそれを改善する対策もこしらえました。3年前以上のことです。しかし、そのためのメソッドがすでにEloquentのメソッドに存在することに最近気づきました。
phpでは配列のデータをループするならforeachを使います。LaravelのCollectionでもforeachを使ってループできます。しかし、Collectionならeach()を使いましょう。
サイトのアクセスが増えてくると、ロードバランスを導入して複数の仮想マシンでウェブサーバーを立ち上げる必要性が出てきます。となると、必要になるのは例えば認証したユーザーのセッション情報を複数のマシンで共有すること。そこでredisの登場です。
「お客さんにメールが届かないのでどうかして?」というCSからの質問。見てみるとexample@yahoo.comであるところ、example@yahpo.comになっていたりします。たった1文字違いですが、会員登録してもこのためにメールが届かないばかりか、次回からは多分ログインもできません。もちろんお客さんの間違いですが、登録時にこれが通ってしまうというのは問題です。これをどうかしたいです。