Tablas Vinculadas

Versión 6 (Guillermo Zdanowicz, 17/03/2016 22:50) → Versión 7/9 (Guillermo Zdanowicz, 17/03/2016 22:51)

h1. Tablas Vinculadas

Cuando vinculamos tablas deseamos que datos de distintas tablas se reflejen en nuestro formulario
*
1 - Si tenemos un listado de compras queremos que en alguna columna aparezca la identificacion del proveedor.*

Para ello agregamos en /views/compras/index.php:

<pre>
<?= GridView::widget([
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'columns' => [
['class' => 'yii\grid\SerialColumn'],

'id',
</pre><pre>'descripcionproveedor.identificacion',</pre><pre>
'descripcion',
'fecha_factura',
'importe',
// 'fecha_recepcion',
// 'imputacion_compra',
// 'comprobante',
// 'pagado',
// 'modo_pago',

['class' => 'yii\grid\ActionColumn'],
],
]); ?>
</pre>

en /models/Compras.php

<pre>
public function getDescripcionproveedor()
{

return $this->hasMany(Proveedores::className(),['id'=>'idproveedor'] );
}
</pre>



*2 - En la carga de datos de compras debemos selleccionar el proveedor*

Agregamos una lista desplegable en el formulario

/views/compras/_form.php

<pre>
...

use yii\helpers\ArrayHelper;
use app\models\Proveedores;

...

<?= $form->field($model, 'idproveedor')->dropDownList(
ArrayHelper::map(Proveedores::find()->all(),'id','identificacion' )

) ?>
</pre>
Redmine Appliance - Powered by TurnKey Linux