在 Meta table Laravel 中过滤查询

Filter query in Meta table Laravel

用户表

**id|name**

   1|xx

users_meta Table

id | user_id | metaKey | metavalue

  1 | 1        | city     | kolkata

  2 |2         |city      | london

  3 |8         |city      |london

我的 moto 是 return 用户属于城市 London.How 我可以实现这个吗??

您可以使用whereHas查询:

User::whereHas('users_meta', function ($query) {
    $query->where('metavalue', 'london');
})->get();

假设您与用户有关系并且 user_meta

比简单

User::with(['userMeta' => function($query){
  $query->where('metaKey', 'city')
  $query->where('metavalue', 'london')
}]);

希望对您有所帮助