Eloquent 过滤方法

Eloquent filter on method

我有 2 tables 项目和 naws。 随着

Item::where( 'items.item_type' , '=' , $pagetype)->get();

我完美地检索了对象,但现在我想在 naws table 中过滤 area。 我怎样才能做到这一点?

模型项目:

namespace App;

use Illuminate\Database\Eloquent\Model;

class Item extends Model
{
    protected $table = 'items';

    public function naw()
    {
        return $this->hasOne('App\Naw');
    }

}

Awnser:

    return Item::with([
        'naw' => function($query) use ($slug)
        {
            $query->whereArea($slug);
        }
    ])->where( 'items.item_type' , '=' , $pagetype)->get();