【发布时间】:2016-07-30 12:00:45
【问题描述】:
我正在使用 Laravel 开发 API,但我对关系 1:N(一对多)有疑问。有没有可能像这样只显示一个属性,creatorUser 是我的关系。
{
"id": "string",
"production": "string",
"title": "string",
"description": "string",
"resourceType": "string",
"collections": "string",
"creatorUser: "name"
}
creatorUser 是我的关系,此刻我是这样的
{
"id": "string",
"production": "string",
"title": "string",
"description": "string",
"resourceType": "string",
"collections": "string",
"creatorUser: {
id: "string",
name: "string"
}
}
我不想从 creatorUser 之类的对象中检索数据,只是名称并像这样显示 "creatorUser: "name" 有什么办法吗?
我正在这样检索我的信息(这是我的控制器)
return CTL_Resource::with(['creationCountry' => function ($query) {
$query->select('idCountry', 'name');
}, 'creatorUser' => function ($query) {
$query->select('idUser', 'name');
}, 'resourceType' => function ($query) {
$query->select(['idResourceType', 'name']);
}, 'tags' => function ($query) {
$query->select(['idTag' => 'name']);
}, 'quickTags' => function ($query) {
$query->select(['idQuickTag' => 'name']);
}, 'relatedTo' => function ($query) {
$query->select(['idRelatedTo' => 'name']);
}])->orderBy('createTime', 'DESC')->paginate($request->per_page);
感谢您的帮助。 (不要问为什么id是字符串,哈哈哈,因为是UUID):P
【问题讨论】:
标签: php api laravel eloquent relation