我正在研究Laravel Eloquent Relationships,其中有不同的例子。我有一个州模型和城市模型,城市属于州和州有许多城市。
根据https://laravel.com/docs/5.7/eloquent-relationships#eager-loading上的给定代码,我成功查询了名称以'p'开头的城市。但我无法检索所有那些州名以'l'开头的城市。
这可能是一个非常基本的问题,但是,我仍然在寻求不成功的原因和原因。
试试这个:
State::where('name','like','l%')->get();
查询关系:
$states= City::whereHas('state', function ($query) {
$query->where('name', 'like', 'l%');
})->get();
您可以使用whereHas
在相关模型上应用过滤器
$states= City::whereHas('state', function ($query) {
$query->where('name', 'like', 'i%');
})->get();