2017-06-12 51 views
0

我需要在我的「設備」列表視圖中需要的表格3表格,設備(ID,名稱) 參數(ID,名稱)和數據透視表equipment_parameter(equipment_id,parameter_id)添加一個列的參數名稱,所以我需要從參數表中檢索名稱。laravel的揹包添加Colum從相關表格

設備型號:

public function parametros(){ 

    return $this->belongsToMany('App\Parametro','equipo_parametro','equipo_id', 
          'parametro_id')->withTimestamps(); 
} 

參數型號:

public function equipos(){ 

    return $this->belongsToMany('App\Equipo','equipo_parametro','parametro_id', 
           'equipo_id')->withTimestamps(); 
} 

我加入這個上equipmentCrudcontroller,但都沒有成功。

$this->crud->addColumn([ // Select 
    'label' => 'Parametro', 
    'type' => 'select2', 
    'name' => 'equipo_id', // the db column for the foreign key 
(not sure here since equipment foreign key is on pivot table????) 
    'entity' => 'parametros', // the method that defines the relationship in your Model 
    'attribute' => 'nombre', // foreign key attribute that is shown to user 
    'model' => "App\Parametro" // (doubt, there's a pivot table inbetween???) foreign key model 
    ]); 

回答

0

如果要添加一列,並已運行前面的遷移,你可以在其中創建新的遷移php artisan make:migration update_equipment_table,然後你可以做這樣的事情

Schema::table('table', function (Blueprint $table) { 
    $table->string('column'); 
}); 

然後重新運行遷移php artisan migrate這個會將新列添加到您的表中。

+0

不完全,該列存在於另一個表中,我找到了解決方案,而不是使用'type'=>'select2',必須使用select_multiple才能在另一個表中顯示名稱 –

+0

意義不錯! – prola