php - Laravel Query 获取来自同一国家和城市的用户
问题描述
我正在尝试从用户表中获取用户。我有另一个表user_details存储自定义配置文件字段。user_details表有四列id,user,user_register_field, value。
id 用户 user_register_field 值 1 1 性别 男 2 1 个城市 somecity 3 1 个国家 某个国家 4 2 性别 女性 5 2 城市 空 6 2 国 某国 7 3 性别 男
用户.php
public function Udetails()
{
return $this->hasMany('App\UserDetails','user');
}
假设用户 id 为 1 的用户已登录,我想向他展示来自用户 1 所在国家和城市的其他用户。
解决方案
做这样的事情:
User::whereHas('Udetails',function($q){
$q->where('user_register_field','country')
->where('value',your_logged_users_country);
})->whereHas('Udetails',function($q){
$q->where('user_register_field','city')
->where('value',your_logged_users_city);
})->get();
推荐阅读
- laravel - Laravel 更改资源路由 uri
- reactjs - 如果布局道具值是“响应式”,Next.js 新图像组件如何检测设备大小?
- c++ - 字符串值有多安全?
- python - 矢量化滑动/滚动 numpy nanmean
- amazon-web-services - 在 S3 中,我们可以在对象级别而不是存储桶级别打开版本控制和加密吗?
- html - Float:left 与 flexbox
- python - python返回一个格式奇怪的字符串
- r - 标准化 R 中数据集之间的时间数据
- swift - 在 Xcode 中创建 UIButton,右侧为图标,左侧为文本
- java - 从 Maven、Tomcat、jax-rs、Jersey 项目中分离前端代码