php - 雄辩 | 使用 with() 导致返回 NULL
问题描述
我正在尝试在 Laravel 中使用 Eloquent 来运行查询。我正在使用该with()
函数来从关系中获取结果,但是这总是返回null
.
这是我的代码:
Posts::query()
->select('id')
->with([
'author:id',
'category.images:url',
]);
使用该函数转储查询getQueryLog()
,如果我在具有相同绑定的 SQL 客户端内运行查询,我会得到一个结果,但是响应看起来像这样......
{
id: 1,
category: {
id: 1,
category_images: null
}
}
我试过用谷歌搜索这个问题,但真的找不到任何东西。
提前致谢。
解决方案
您必须在 select 语句中选择外键,让 Eloquent 查询您的关系,如下所示:
Posts::query()
->select('id', 'author_id', 'category_id')
->with([
'author:id',
'category.images:url',
]);
推荐阅读
- javascript - 有什么方法可以限制wordpress中的不同IP?
- database - 在 Rust 中使用 oracle crate
- python - 在地图上聚类位置,其中每个聚类具有相同数量的点
- javascript - 正则表达式检测 Zalgo
- leaflet - 在传单 [r] 中绘制 sf 类型的对象
- bytecode - Dalvik 字节码和比较为 0 跳转
- reactjs - OpenID Connect 与 .Net Core 3 和 React
- logging - kubectl 为 pod 中的特定容器记录“未找到首选地址”
- java - 使用 Junit 5 和 spring boot 2 在 Mokito 2 中未找到测试
- javascript - 如何从 AJAX 向 Odoo 10 自定义模块控制器发出 POST/GET 请求?(被 CORS 政策阻止)