php - Laravel 从 2 个模型中找到用户
问题描述
如何在 2 个不同的表中搜索用户?
例子:
$user =
// either
User::where('email', $request->email)->first();
// or this
Seller::where('email', $request->email)->first();
解决方案
所以在第一个模型中寻找用户存在。如果找不到,请查看第二个模型。
$user = User::where('email', $request->email)->first();
if (!$user) {
$user = Seller::where('email', $request->email)->first();
}
if ($user) {
return $user;
} else {
return 0;
}
正如蒂姆在评论中建议的那样,如果您使用的是 php 7+,则可以使用空合并运算符在一行中完成
return User::where('email', $request->email)->first() ?? Seller::where('email', $request->email)->first() ?? 'not found / 0 / or anything';
推荐阅读
- authentication - Auth0 - 不同组织的移动应用程序
- docker - Filebeat 停止向 Logstash 发送数据,因此 Elasticsearch 在几十万个文档后停止发送数据,重新启动 Filebeat 容器
- python - 使用字典计数并删除不相关的值
- metadata - Shibboleth SP 配置异常 shibboleth 处理程序在未配置的位置调用 (http://Shub.adatum.com/Shibboleth.sso/login)
- javascript - 如何使用 jQuery 选择仅包含空格的元素?
- javascript - 如果键具有特定元素,则不显示组件
- python - pypfopt (PyPortfolioOpt) 库 从每周回报计算年化预期回报
- kubernetes - 通过秘密文件在 Kubernetes 中使用变量
- reactjs - reactjs下拉父菜单路由不起作用
- php - 用于在 php 中提取 db 数据的嵌套 while 循环