2021.12.20 Web制作
システム開発 - Awesome Laravel tips and tricks
Webエンジニアのカンタです!
普段はLaravelでのバックエンド開発を担当しております。
ソースコードの実装に行き詰まると、公式ドキュメントを参照することが多いのですが、自分が欲しい情報に辿り着かずに時間がかかることが多いこの頃です。
もっと効率的に情報収集したいと常日頃から感じている次第です。
youtubeで「Laravel」を検索すると、「Laravel 入門」や「Laravel チュートリアル」などの初学者向けの動画で溢れています(あくまで個人的な印象ですが)
動画で学習するならudemyが鉄板ですが、やっぱりyoutubeでサクッとみたいじゃないですか。
中級者向けの動画を探していたところ、「Laravel Daily」に出会いました。
投稿者の「Povilas Korop」さんは更新頻度も多く、実際に活用できるコードを非常に聞き取りやすい英語で解説してくれるので、めっちゃくちゃ有益です。
タイトルに書いてありますが、本日紹介したいのは「Awesome Laravel tips and tricks(素晴らしいLaravelのヒントとコツ)」になります!
My 125 Quick Laravel Tips About Everything - YouTube
「Povilas Korop」さんはYoutubeで数々のコードレビューなども手掛ける敏腕のLaravelエンジニアです。その
その彼に開発されたLaravelのドキュメントがGithubに展開されています。
GitHub - LaravelDaily/laravel-tips: Awesome tips for Laravel
めちゃめちゃ数が多いので、全部紹介したら一つの書籍が出来るボリュームです。
本日はいくつかのサンプルコードを共有いたします。
1. Eloquent where date methods
In Eloquent, check the date with functions whereDay()
, whereMonth()
, whereYear()
, whereDate()
and whereTime()
.
$products = Product::whereDate('created_at', '2018-01-31')->get();
$products = Product::whereMonth('created_at', '12')->get();
$products = Product::whereDay('created_at', '31')->get();
$products = Product::whereYear('created_at', date('Y'))->get();
$products = Product::whereTime('created_at', '=', '14:13:58')->get();
エロクアントで日付取得のメソッドの一覧が書かれていますね。
2. No timestamp columns
If your DB table doesn't contain timestamp fields created_at
and updated_at
, you can specify that Eloquent model wouldn't use them, with $timestamps = false
property.
class Company extends Model
{
public $timestamps = false;
}
タイムスタンプを無効にしたいときに指定するプロパティです。
3. To Fail or not to Fail
In addition to findOrFail()
, there's also Eloquent method firstOrFail()
which will return 404 page if no records for query are found.
$user = User::where('email', 'povilas@laraveldaily.com')->firstOrFail();
条件に該当しない場合は404を返すメソッド。
4. Hide Some Columns
When doing Eloquent query, if you want to hide specific field from being returned, one of the quickest ways is to add ->makeHidden()
on Collection result.
$users = User::all()->makeHidden(['email_verified_at', 'deleted_at']);
コレクションで意図的に隠したいフィールドがある場合の便利なメソッド。
上記4つはデータベースやエロクアント系の情報しか参照していませんが(知ってるよ!方は申し訳ありません)、実際には下記のようにジャンルは多岐に渡ります。
Table of Contents
- DB Models and Eloquent (56 tips)
- Models Relations (30 tips)
- Migrations (13 tips)
- Views (11 tips)
- Routing (21 tips)
- Validation (14 tips)
- Collections (6 tips)
- Auth (5 tips)
- Mail (5 tips)
- Artisan (5 tips)
- Factories (4 tips)
- Log and debug (4 tips)
- API (2 tips)
- Other (31 tips)
Laravelで開発されている方に是非お勧めしたい情報を共有させていただきました!
それでは失礼いたします!
東京のホームページ制作・Web制作のお問い合わせ、お見積り依頼、相談、質問は
こちらのお問い合わせフォームよりお願いいたします