Utilizzo il Serverfireteam LaravelPanel (che utilizza zofe/rapyd-laravel ). Ho creato un controller crud per un'entità. Questa entità ha una chiave esterna in un'altra tabella. Ora voglio mostrare un completamento automatico per questa chiave esterna ma mostra solo una selectbox vuota.Aggiunta di una selezione per oggetto chiave esterna serverfireteam/panel
il mio codice di controllo simile a questa:
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
));
}
E il mio modello file:
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');
}
}
Può fornire qualche esempio output di '\ App \ Kunde :: lists (" nome "," id ")'? – maxwilms
L'output è: oggetto (Illuminate \ Support \ Collection) # 365 (1) {["items": protected] => array (2) {[1] => string (7) "cookmal" [2] = > string (8) "schaumal"}} –
Collegato! Secondo la documentazione di Laravel il metodo 'lists()' dovrebbe restituire un array e non una collezione. Probabilmente il cast della raccolta su un array aiuterebbe: '\ App \ Kunde :: lists (" name "," id ") -> toArray()'. – maxwilms