php - 如何从 Laravel 关系中的记录中获取第一个条目?
问题描述
我得到了这个查询,它根据关系从我的数据库中获取结果。查询工作正常,但它从数据库/表中获取第一个条目,而不是数组的第一个值。
我该如何解决?
$motor = Motor::query()
->where([
['effect_id', '=', $request->effect_id],
['poles', '=', $request->poles],
['voltage_id', '=', $request->voltage_id],
['active', '=', 1],
])
->whereHas('MotorSize', function (Builder $query) {
$query->whereIn('mounting', ['B5', 'B14', 'B34', 'B35']);
})
->firstOrFail();
我尝试了不同的东西,例如:
将 orderBy 添加到 Motor 模型并在我的数据库中创建一个“优先级”字段,为每个字段指定一个 1 到 100 之间的数字:(我实际上认为这可行,但它仍然从表中获取第一个条目)
public function MotorSize()
{
return $this->belongsTo('App\MotorSize')->orderBy('priority', 'ASC');
}
我也尝试过这样的事情,但它是一团糟,从来没有让它工作:
$query->where(function ($query) {
$query->where('mounting', 'like', 'B5');
})
->orWhere(function($query) {
$query->where('mounting', 'like', 'B14');
})
->orWhere(function($query) {
$query->where('mounting', 'like', 'B34');
})
->orWhere(function($query) {
$query->where('mounting', 'like', 'B35');
});
欢迎任何建议:)
解决方案
推荐阅读
- cluster-analysis - TDengine有哪些不可用的场景?
- jenkins - 无法使用使用 jq 的环境变量呈现 groovy sh 脚本
- javascript - 使用 Webpack 5 发布导出函数
- python - pandas ta ema 计算不准确
- python - Django 自定义权限类不起作用
- python - 有条件地创建一个新列
- python-3.x - vscode 中的 Python 类在意外标记 `(' 附近出错
- for-loop - 替代 Julia 中的嵌套 for 循环
- java - 春季安全 OAuth
- reactjs - 如何在 react useEffect 中仅注册一次并获取 useState 更改