Tablas Vinculadas
Versión 7 (Guillermo Zdanowicz, 17/03/2016 22:51)
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 | 3 | 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 | 7 | 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 | 1 | 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> |