0

User::where('first_name', 'Jon')->get()私は最近、Laravel 4 Eloquentの動的 where 句 (それが呼ばれるものだと思います) について学びましたUser::whereFirstName('Jon')->get()。これはどのくらい柔軟ですか??

たとえば、次のことができますか

  • 複数の列User::whereFirstNameOrLastName('Jon', 'Smith')->get();
  • =like>=または以外の演算子を使用するLIKE
4

1 に答える 1

5

Query Scopeを使用して、必要なものを実現できます。

簡単な例:

public function scopeFirstOrLastName($query, $first, $last)
{
    return $query->where('first_name', 'LIKE', '%' . $first . '%')
                 ->where('last_name', 'LIKE', '%' . $last . '%');
}

それを使用して:

$user->firstOrLastName('John', 'Doe')->get();

必要に応じて名前を付けることができ、内部で任意の演算子 (または任意のクエリ ビルダー操作) を使用できます。

于 2013-09-22T13:10:24.103 に答える