miércoles, 4 de diciembre de 2019

Práctica 5: Agregar tablas de contactos.


En esta práctica agregaremos la tabla de contactos que nos permitirá personalizar las cotizaciones que realicemos dirigiéndolas hacia una persona dentro de alguna de las empresas que tenemos en nuestra base de datos.

Crearemos la migracion para crear la tabla contacto con el comando:
 
yii migrate/create tabla_contacto


 
 
En caso de marcar error agregar al principio del comando la palabra php

Editamos el archivo generado en visual code agregando el siguiente código para generar la tabla contacto.

public function safeUp()
{
$this->createTable('contacto', [
'id' => $this->primaryKey(),
'nombre' => $this->string(100)->notNull(),
'puesto' => $this->string(100)->notNull(),
'email' => $this->string(100),
'telefono' => $this->string(100),
'id_empresa' => $this->integer(),
]);

$this->addForeignKey('fk-contacto-empresa','contacto','id_empresa','empresa','id');
}


Una vez guardados los cambios en el archivo ejecutamos la instrucción.
php yii migrate
 

Podemos revisar la base de datos entrando la programa HeidiSQL.



Creación de modelo Contacto.
 
Para crear el modelo entraremos al generador de código Gii accediendo a la dirección.

Después haremos click en el botón Generate en la sección Model Generator.
  
En la pantalla del generador de modelos agregaremos los datos del nombre de la tabla y de la clase que utilizaremos para acceder a la misma. En este caso la tabla se llama contacto y la clase se llamara Contacto.


Hacemos click en el boton Preview que se encuentra en la parte de debajo de la pagina.

Seguidamente hacemos click en el boton Generate para generar el archivo del modelo.


Generación de CRUD (altas,bajas cambios) para la tabla contacto

Hacemos click en el menu de la parte izquierda en la opción CRUD Generator en donde escribiremos en los tres primeros campos los datos de la clase del model, la clase para busquedas y la clase para el controlador.

app\models\Contacto
app\models\ContactoSearch
app\controllers\ContactoController


En la parte de abajo haremos click en el boton Preview y posteriormente en el boton Generate


Podemos revisar el controlador que nos genero entrando en la dirección