Używam Serverfireteam LaravelPanel (który używa zofe/rapyd-laravel ). Stworzyłem kontroler crud dla jednostki. Ta encja ma klucz obcy do innej tabeli. Teraz chcę pokazać autouzupełnianie dla tego klucza obcego, ale pokazuje tylko puste pole wyboru.Dodawanie obiektu klucz obcy klucz serwer firewall/panel
mój kod Kontroler wyglądać następująco:
public function edit($entity){
parent::edit($entity);
$this->edit = \DataEdit::source(new \App\Regal());
$this->edit->add('bezeichnung', 'Bezeichnung','text');
$this->edit->add('nummer', 'Nummer','text');
$this->edit->add('maxPaletten', 'Max Paletten je Ebene','text');
$this->edit->add('anzahlEbenen', 'Anzahl Ebenen','text');
$this->edit->add('kunde_id','Kunde','select')->options(\App\Kunde::lists("name", "id"));
return \View::make('regale.editPanel', array(
'title' => $this->entity ,
'edit' => $this->edit
));
}
A mój model pliki:
class Kunde extends Model {
protected $table = 'kunden';
public function listPaletten(){
return $this->hasMany('App\Models\Palette');
}
public function listAdressen(){
return $this->hasMany('App\Models\Adresse');
}
public function listRegale(){
return $this->hasMany('App\Models\Regal');
}
public function listArtikel(){
return $this->hasMany('App\Models\Artikel');
}
}
..
class Regal extends Model {
protected $table = 'regale';
public function kunde(){
return $this->belongsTo('App\Models\Kunde');
}
}
można podać jakiś przykład wyjście z '\ App \ Kunde :: lists (" name "," id ")'? – maxwilms
Dane wyjściowe: obiekt (Illuminate \ Support \ Collection) # 365 (1) {["items": protected] => array (2) {[1] => string (7) "cookmal" [2] = > string (8) "schaumal"}} –
Wired! Zgodnie z dokumentacją Laravel metoda 'lists()' powinna zwrócić tablicę, a nie kolekcję. Prawdopodobnie przesyłanie kolekcji do tablicy pomoże: '\ App \ Kunde :: lists (" name "," id ") -> toArray()'. – maxwilms