话题列表里的某些字段,如 body,能不能不要获取?

body的内容,只在话题详情里才需要。
如果不想在话题列表有body字段,应该如何操作?
因为body可能会有几万个字符,获取过来也没有使用,增加系统和网络的开销。

{
    "data": [
        {
            "id": 8,
            "title": "对方更好个tempora deleniti delectus.",
            "body": "<p>Atque rerum voluptatum sed eligendi suscipit libero cupiditate atque. Nesciunt dolores est id voluptatem voluptatem quia non.</p>",
            "user_id": 8,
            "category_id": 1,
            "reply_count": 0,
            "view_count": 0,
            "last_reply_user_id": 0,
            "excerpt": "Atque rerum voluptatum sed eligendi suscipit libero cupiditate atque. Nesciunt dolores est id voluptatem voluptatem quia non.",
            "slug": "nemo-quasi-dolore-tempora-deleniti-delectus",
            "created_at": "2018-08-16 21:27:33",
            "updated_at": "2018-09-20 17:05:34",
            "user": {
                "id": 8,
                "name": "武帅",
                "email": "dolorem90@example.net",
                "avatar": "https://cdn.learnku.com/uploads/images/201710/14/1/Lhd1SHqu86.png?imageView2/1/w/200/h/200",
                "introduction": "In necessitatibus a dolorem accusantium officia exercitationem ratione.",
                "bound_phone": false,
                "bound_wechat": false,
                "last_actived_at": "2018-09-14 14:18:49",
                "created_at": "2018-09-14 14:18:49",
                "updated_at": "2018-09-14 14:18:49"
            },
            "category": {
                "id": 1,
                "name": "分享",
                "description": "分享创造,分享发现"
            }
        },
        {
            "id": 50,
            "title": "lla sequi.yutr fdhfd梵蒂冈华东师范",
            "body": "<p>Rerum minima accusamus ratione pariatur dolorum dolorem minima. Ab fugiat sit consequatur impedit hic neque. Eligendi enim sequi ipsum. Quia dolorem dolor nemo quia beatae.</p>",
            "user_id": 1,
            "category_id": 1,
            "reply_count": 0,
            "view_count": 0,
            "last_reply_user_id": 0,
            "excerpt": "Rerum minima accusamus ratione pariatur dolorum dolorem minima. Ab fugiat sit consequatur impedit hic neque. Eligendi enim sequi ipsum. Quia dolorem dolor nemo quia beatae.",
            "slug": "reiciendis-inventore-quos-nulla-sequi-yutr-fdhfd-fan-di-gang-hua-dong-shi-fan",
            "created_at": "2018-08-31 19:29:36",
            "updated_at": "2018-09-20 17:05:26",
            "user": {
                "id": 1,
                "name": "liyu",
                "email": "hdfjskad@qq.com",
                "avatar": "https://larabbs.w1.94te.com/uploads/images/avatars/201809/19//1_1537363620_aEeABeiWw4.png",
                "introduction": "123",
                "bound_phone": false,
                "bound_wechat": false,
                "last_actived_at": "2018-09-20 17:14:54",
                "created_at": "2018-09-14 14:18:49",
                "updated_at": "2018-09-19 21:49:36"
            },
            "category": {
                "id": 1,
                "name": "分享",
                "description": "分享创造,分享发现"
            }
        },
       此处省略N行
}
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 2
liyu001989

可以啊,不过这个是应该由前端决定的,前端传个参数过来,不要那些数据,或者要那些数据,然后你在 transformer 里面根据请求返回不同的值

5年前 评论

@liyu001989 谢谢老大回复得这么及时。
请问您提供的思路是不是在TopicTransformer.php里设置一个参数,比如下面的思路(我水平低,代码没有优化):

··

public function transform(Topic $topic)
{
    if(这里根据前端参数判断,或者其它方法,如“Route::currentRouteName()==XXX”)
    {
        return [
            'id' => $topic->id,
            'title' => $topic->title,
            'slug' => $topic->slug,
        ];
    }else(
        return [
            'id' => $topic->id,
            'title' => $topic->title,
            'body' => $topic->body,
            'user_id' => (int) $topic->user_id,
            'category_id' => (int) $topic->category_id,
            'reply_count' => (int) $topic->reply_count,
            'view_count' => (int) $topic->view_count,
            'last_reply_user_id' => (int) $topic->last_reply_user_id,
            'excerpt' => $topic->excerpt,
            'slug' => $topic->slug,
            'created_at' => $topic->created_at->toDateTimeString(),
            'updated_at' => $topic->updated_at->toDateTimeString(),
        ];
    )

}

··

5年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!