2016-07-22 8 views
0

Ich arbeite mit einem großen JSON, die mehrere Daten aus der Datenbank zurückgibt, und ich muss ein Integer-Modell, das keine Art von Beziehung, muss ich nur zurückgeben gib alle Datensätze zurück, die LampModels mit diesem großartigen JSON modelliert. Aber Laravel gibt mir immer einen illegalen Offset-Typ zurück.Laravel Rückkehr Illegal Offset-Typ, wenn ich trie ein Modell zurück

-Controller

public function showAllUdiJson() 
    { 
    $allLamps = LampModels::all(); 
    return Ilumination::with('street') 
         ->with('neighborhood') 
         ->with('iluminationinfo') 
         ->with('economyplan') 
         ->with('lamp') 
         ->with('reactor') 
         ->with('aluminumcable') 
         ->with('steelconduit') 
         ->with('alllamps', $allLamps) 
         ->with('ticket')->get(); 

    } 

LampModels

<?php 

class LampModels extends \Eloquent { 
    protected $fillable = []; 
    protected $table = 'lampmodel'; 
} 

Beleuchtung

<?php 

class Ilumination extends \Eloquent { 
    protected $fillable = []; 

    protected $table = 'ilumination'; 

    public function street() 
    { 
    return $this->belongsTo('street'); 
    } 

    public function neighborhood() 
    { 
    return $this->hasOne('neighborhood', 'id'); 
    } 

    public function iluminationinfo() 
    { 
    return $this->hasOne('iluminationinfo'); 
    } 

    public function ticket() 
    { 
    return $this->hasMany('ticket'); 
    } 

    public function economyplan() 
    { 
    return $this->hasOne('economyplan', 'id' ,'street_id'); 
    } 

    public function lamp() 
    { 
    return $this->hasOne('lamp', 'id'); 
    } 

    public function reactor() 
    { 
    return $this->hasOne('reactor', 'id'); 
    } 

    public function aluminumcable() 
    { 
    return $this->hasOne('aluminumcable', 'id'); 
    } 

    public function steelconduit() 
    { 
    return $this->hasOne('steelconduit', 'id'); 
    } 
} 

See the error

+0

Bitte teilen Sie den vollständigen Text/Spur der Fehlermeldung. Es kann auch helfen, die Klassen "LampModels" und "Illumination" zu sehen. –

+0

@ThomasKelley getan – gmanara

Antwort

0

Ihr Fehlerbericht ist ziemlich schlecht, aber scheint, dass Ihr Illumination-Modell verfügt nicht über eine Alllamp-Methode.

Sie sollten attachh LampModels zu Ihrem Ilumination-Modell mit einer Beziehung, nicht tun, was Sie tun, denn es ist ein falscher Ansatz.

0

Ich glaube, Sie irgendwo Ticket Methode zuzugreifen, die in Beleuchtungsmodell erstellt wurde, die Fehler ..

public function ticket() 
{ 
    return $this->hasMany('ticket'); 
} 

angetroffen Offset, wenn Sie illumination-> Ticket zugreifen möchten, können Sie diese Methode mit Schleife verwenden.

foreach(illumination->tickets as ticket) { 
    $field1 = ticket->field1; 
} 

Wenn Ihr noch jede Frage, die sich als hier Ihre Fehlerprotokoll Seite wählen ..