↗ Comparing Eloquent's get, cursor, chunk, and lazy methods
A short & sweet overview of get()
, cursor()
, chunk()
, and lazy()
to retrieve models from the database. It's a tradeoff between speed and memory usage.
thoughts and inspiration on designing, programming, and writing for the web
A short & sweet overview of get()
, cursor()
, chunk()
, and lazy()
to retrieve models from the database. It's a tradeoff between speed and memory usage.
I use Model::findOrFail
a lot in Laravel. Recently, I realized it's not always the best option.
I've used HasOne
relationships for 1:1
relationships, but those are rare. I haven't considered using them to scope down relationships, like having one default payment method in a set of n
methods.
<?php class User extends Model{ public function paymentMethods(): HasMany { return $this->hasMany(PaymentMethod::class); } public function defaultPaymentMethod(): ?HasOne { return $this->hasOne(PaymentMethod::class) ->whereDefault(); }} $user->defaultPaymentMethod;
After reading Tim's post, I have a feeling there are some places where I needed this but didn't think of it at the time…