suchen

Heim  >  Fragen und Antworten  >  Hauptteil

So ändern Sie elegant den SCHLÜSSEL des Ausgabe-JSON in LARAVEL

Ich habe zwei MODELLE

Produkt:

protected $visible = ['modules', 'id','name'];
public function modules()
    {
        return $this->hasMany('App\Model\Module','root','id');
    }

Modul:

protected $visible = [ 'id','name'];

Im Controller:

$products = $this->product->with(['modules'])->get();

Ausgabe:

Das Frontend verwendet iview und ich möchte die Kaskadenauswahl von iview verwenden
Die Formatanforderungen sind:

Daher möchte ich fragen: Wie kann ich den JSON-Schlüssel in LARAVEL elegant an meine Bedürfnisse anpassen?

天蓬老师天蓬老师2759 Tage vor680

Antworte allen(1)Ich werde antworten

  • PHP中文网

    PHP中文网2017-05-16 16:49:06

    学会map方法,会方便很多

    $products->transform(function($value) {
        return [value=>$value->id, 
                    label=>$vale->name,
                    children=>$value->modules->map(function($v) {return [label=>$v->name,value=>$v->id];})
                   ];
    });
    return $products->toJson();

    Antwort
    0
  • StornierenAntwort