php - Laravel 将原始 SQL 查询编写为 Eloquent 的可能方法
问题描述
我从我的数据库中选择有问题。
这就是我的查询的样子:
SELECT `deads`.`id`, `graves`.*, `places`.`row`, `places`.`place`, `places`.`id_quarter`, `places`.`occupied` FROM `deads` LEFT JOIN `graves` ON `deads`.`id_grave` = `graves`.`id` LEFT JOIN `places` ON `graves`.`id_place` = `places`.`id` WHERE `places`.`id_quarter` = '1' AND `places`.`occupied` = '1'
我的死亡模型:
public function graves()
{
return $this->belongsTo(Grave::class,'id_grave');
}
我的坟墓模型:
public function places()
{
return $this->belongsTo(Place::class,'id_place');
}
public function deads()
{
return $this->hasMany(Dead::class);
}
我的地方模型:
public function quarters()
{
return $this->belongsTo(Quarter::class,'id_quarter');
}
public function graves()
{
return $this->hasOne(Grave::class,'id_grave');
}
我不明白,我怎么能把它写成雄辩的选择。我想绕过未来的注入问题。有什么方法可以顺利完成,还是应该将其保留为 RAW SQL 查询?如何将它转换为我使用 eloquent 时得到的数组?
解决方案
推荐阅读
- reactjs - 反应路由器 NavLink 不会更改为新组件
- excel - VBA-双击将x添加到单元格,但如何双击删除?
- python - NameError:名称未在 Python 中定义
- python - 从 np.where() 获取单个值以填充新列
- css - 恰好是快捷方式的边框语法问题
- google-cloud-platform - 使用 Ansible 创建 GCP 存储桶
- swift - 如何为父实体满足 NSPredicate 的子实体创建 FetchRequest 谓词
- intellij-idea - .\idea.bat 在运行 Intellij IDEA 64 位时有效,但不是 idea64.exe
- android - 按下后退按钮,不隐藏 Android 10 上的键盘
- javascript - 当一个回调没有返回任何承诺时,Promise 链如何工作?