1
Laravel Eloquentとより深い関連オブジェクトを介してDBからのフェッチが成功した場合 - どのようにサブオブジェクト属性で深くソートするのですか?Laravelで雄弁なオブジェクトのコレクションを並べ替えるにはどうすればいいですか?
Laravel Eloquentとより深い関連オブジェクトを介してDBからのフェッチが成功した場合 - どのようにサブオブジェクト属性で深くソートするのですか?Laravelで雄弁なオブジェクトのコレクションを並べ替えるにはどうすればいいですか?
$stuff = MyModel::all();
$sortedStuff = $stuff->sort(function($a, $b)
{
$a = $a->getMyCalculatedAttribute();
$b = $b->getMyCalculatedAttribute();
//here you can do more complex comparisons
//when dealing with sub-objects and child models
if ($a->property === $b->property) {
return 0;
}
return ($a->property > $b->property) ? 1 : -1;
});
あなたはアクセッサ属性でsortBy
メソッドを使用することができます。
class User extends Model
{
public function getNameAttribute()
{
return $this->first_name.' '.$this->last_name;
}
}
$users = MyModel::all()->sortBy('name');
ハイテクヨセフは、あなたの入力に感謝を。私は、単純なビットではなく、より深く/強力なソートを手助けするために、皆のための投稿をしようとしています。その努力に向けて私の質問を編集して助けてくれますか? –