Tablas Vinculadas
Versión 8 (Guillermo Zdanowicz, 17/03/2016 22:52)
| 1 | 1 | Guillermo Zdanowicz | h1. Tablas Vinculadas |
|---|---|---|---|
| 2 | 1 | Guillermo Zdanowicz | |
| 3 | 1 | Guillermo Zdanowicz | Cuando vinculamos tablas deseamos que datos de distintas tablas se reflejen en nuestro formulario |
| 4 | 1 | Guillermo Zdanowicz | * |
| 5 | 1 | Guillermo Zdanowicz | 1 - Si tenemos un listado de compras queremos que en alguna columna aparezca la identificacion del proveedor.* |
| 6 | 1 | Guillermo Zdanowicz | |
| 7 | 8 | Guillermo Zdanowicz | Para ello agregamos en */views/compras/index.php*: |
| 8 | 1 | Guillermo Zdanowicz | |
| 9 | 1 | Guillermo Zdanowicz | |
| 10 | 3 | Guillermo Zdanowicz | <pre> |
| 11 | 3 | Guillermo Zdanowicz | <?= GridView::widget([ |
| 12 | 3 | Guillermo Zdanowicz | 'dataProvider' => $dataProvider, |
| 13 | 3 | Guillermo Zdanowicz | 'filterModel' => $searchModel, |
| 14 | 3 | Guillermo Zdanowicz | 'columns' => [ |
| 15 | 3 | Guillermo Zdanowicz | ['class' => 'yii\grid\SerialColumn'], |
| 16 | 3 | Guillermo Zdanowicz | |
| 17 | 3 | Guillermo Zdanowicz | 'id', |
| 18 | 6 | Guillermo Zdanowicz | </pre><pre>'descripcionproveedor.identificacion',</pre><pre> |
| 19 | 3 | Guillermo Zdanowicz | 'descripcion', |
| 20 | 3 | Guillermo Zdanowicz | 'fecha_factura', |
| 21 | 3 | Guillermo Zdanowicz | 'importe', |
| 22 | 3 | Guillermo Zdanowicz | // 'fecha_recepcion', |
| 23 | 3 | Guillermo Zdanowicz | // 'imputacion_compra', |
| 24 | 3 | Guillermo Zdanowicz | // 'comprobante', |
| 25 | 3 | Guillermo Zdanowicz | // 'pagado', |
| 26 | 3 | Guillermo Zdanowicz | // 'modo_pago', |
| 27 | 3 | Guillermo Zdanowicz | |
| 28 | 3 | Guillermo Zdanowicz | ['class' => 'yii\grid\ActionColumn'], |
| 29 | 3 | Guillermo Zdanowicz | ], |
| 30 | 3 | Guillermo Zdanowicz | ]); ?> |
| 31 | 3 | Guillermo Zdanowicz | </pre> |
| 32 | 1 | Guillermo Zdanowicz | |
| 33 | 8 | Guillermo Zdanowicz | en */models/Compras.php* |
| 34 | 1 | Guillermo Zdanowicz | |
| 35 | 7 | Guillermo Zdanowicz | <pre> |
| 36 | 7 | Guillermo Zdanowicz | public function getDescripcionproveedor() |
| 37 | 7 | Guillermo Zdanowicz | { |
| 38 | 7 | Guillermo Zdanowicz | |
| 39 | 7 | Guillermo Zdanowicz | return $this->hasMany(Proveedores::className(),['id'=>'idproveedor'] ); |
| 40 | 7 | Guillermo Zdanowicz | } |
| 41 | 7 | Guillermo Zdanowicz | </pre> |
| 42 | 1 | Guillermo Zdanowicz | |
| 43 | 1 | Guillermo Zdanowicz | *2 - En la carga de datos de compras debemos selleccionar el proveedor* |
| 44 | 1 | Guillermo Zdanowicz | |
| 45 | 1 | Guillermo Zdanowicz | Agregamos una lista desplegable en el formulario |
| 46 | 1 | Guillermo Zdanowicz | |
| 47 | 8 | Guillermo Zdanowicz | */views/compras/_form.php* |
| 48 | 1 | Guillermo Zdanowicz | |
| 49 | 1 | Guillermo Zdanowicz | <pre> |
| 50 | 2 | Guillermo Zdanowicz | ... |
| 51 | 2 | Guillermo Zdanowicz | |
| 52 | 2 | Guillermo Zdanowicz | use yii\helpers\ArrayHelper; |
| 53 | 2 | Guillermo Zdanowicz | use app\models\Proveedores; |
| 54 | 2 | Guillermo Zdanowicz | |
| 55 | 2 | Guillermo Zdanowicz | ... |
| 56 | 2 | Guillermo Zdanowicz | |
| 57 | 1 | Guillermo Zdanowicz | <?= $form->field($model, 'idproveedor')->dropDownList( |
| 58 | 1 | Guillermo Zdanowicz | ArrayHelper::map(Proveedores::find()->all(),'id','identificacion' ) |
| 59 | 1 | Guillermo Zdanowicz | |
| 60 | 1 | Guillermo Zdanowicz | ) ?> |
| 61 | 1 | Guillermo Zdanowicz | </pre> |