删除资源收集流明中的数组

问题描述 投票:0回答:1

我仍然是使用流明的初学者

我想问,如何从流明资源中删除此数组这是我的控制器:

public function language($id){
    $languages = Language::where('id', $id)->get();
    return LanguageResource::collection($languages)->additional(['MESSAGE' => 'SUCCESS', 'STATUS' => '200']);
 }

这是我的资源:

class LanguageResource extends JsonResource
{

    public function toArray($request)
    {
        self::$wrap = 'DATA';

        $pages = ManagePage::all();

        $managepage = [];
        foreach ($pages as $page) {
            foreach($page->label as $label){
                $managepage[$page->page_name_variable][$label->label_name] = 
                $label->langtext($this->id)->pluck('text')[0];
            }
        }
        return
        [
            'language_name' => $this->name,
            'language_code' => $this->language_code,
            $this->merge($managepage),
        ];
     }
 }

从我的代码中我得到了这个:

{
"DATA": [
    {
        "language_name": "English",
        "language_code": "lang-English",
        "page-login": {
            "button-add": "add",
            "button-delete": "delete"
        }
    }
],
"MESSAGE": "SUCCESS",
"STATUS": "200"
}

我试图获得这样的回报,而在数据上没有[ ]

{
"DATA":
    {
        "language_name": "English",
        "language_code": "lang-English",
        "page-login": {
            "button-add": "add",
            "button-delete": "delete"
        }
    }
"MESSAGE": "SUCCESS",
"STATUS": "200"
}

有人可以帮我吗?非常感谢那些想帮助我的人..谢谢

php laravel lumen
1个回答
0
投票

我认为您只是忘记了一件事。

self::$wrap = 'DATA'; //can you comment this code and then try this.

$managepage = [];
foreach ($pages as $page) {
    foreach($page->label as $label){
         $managepage['DATA'][$page->page_name_variable][$label->label_name] = 
         $label->langtext($this->id)->pluck('text')[0];
     }
}

告诉我,如果有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.