在 post 这个数据表格里的 userId 栏目的值,是在 user 数据表里的一条数据记录的 id 号,这个栏目就是在 post 还有 user 这两个表之间建立了一个关系。下面我们可以利用一下这个关系。
打开 post.service,修改一下 getPosts 里面准备的这段 SQL,在这段话里加上一个 LEFT JOIN,把 post 还有 user 这两个表合并在一起。用 ON 设置一个合并条件,条件是 user.id 等于 post.userId。
再处理一下需要的字段,需要 post 里的 id,post 里的 title,还有 post 里的 content 这几个字段,另外我们还需要内容的作者相关的数据。可以用一个 JSON_OBJECT 组织一下,起个名字叫 user。
在这个 JSON 对象里,添加一个 id 属性,对应的值是 user.id 字段,还需要一个 name 属性,对应的值是 user.name 这个字段。
回到 HTTP 客户端,重新请求一下 内容列表,这回服务端响应回来的数据里面,每个数据项目里都会带着一个 user 属性,它的值就是用 JSON_OBJECT 组织好的一个 JSON 对象,里面有 id ,对应的值是内容作者的 id 号,还有一个 name 属性,对应的值是内容作者的名字。