-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathnotes.txt
More file actions
194 lines (137 loc) · 6.18 KB
/
notes.txt
File metadata and controls
194 lines (137 loc) · 6.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
Clase 20
crear una seccion para nuevos proyectos
- crear la ruta para nuevos proyectos (/nuevo-proyecto, formularioProyecto)
- crear un controlador para nuevos proyectos (formularioProyecto)
- crear una vista para nuevos proyectos (nuevoProyecto.pug) (.contenido-principal)(h1 #{nombrePagina})
Clase 21
creando el formulario para nuevos proyectos
-copiar del archivo ya creando
Clase 22
Enviando el formulario en express, se tomaran los datos del formulario y se pasaran a una ruta con metodo
post
- modificar el action del formulario (/nuevo-proyecto) (method='post')
- Crear una ruta de tipo post para nuevos proyectos (post, /nuevo-proyecto, protectosController.nuevoProyecto)
Clase 23
Leyendo los datos de un formulario en express, instalacion body-parser
- instalar body-parser, configurarlo para ser utilizado
- imprimir en consola los datos recibidos del formulario
Clase 24
Validacion simple de un formulario, [] tomar los datos recibidos del formulario y validar que tengan valor
destructurar en una variable el nombre del proyecto
- validar el campo, si esta vacio mostrar los errores en la vista (nuevoProyecto)
- modificar la vista para que antes del formulario muestre todos los errores, enviar variable con los errores (.alerta)
Clase 25
Instalacion de mysql
Clase 26
Instalando heidy sql
Clase 27
Instalando mysql
Clase 28
Instalando tableplus
Clase 29
Que es un ORM
Clase 30
Instalando y configurando sequelize, []
- instalar el controlador de mysql
- instalar sequelize
- configurar sequelize (config db.js)
Clase 31
Creando el modelo protectos
- importar la conexion
- crear modelo (models, Proyectos.js, proyectos, id nombre url)
Clase 32
Dejando que sequelize genere automaticamente las tablas
- crear la base de datos (uptasknode)
- importar la configuracion de la db
- validar la conexion (esto utiliza promises por lo tanto then,catch)
- Importar el modelo de proyectos
- crear la tabla del modelo proyectos (async)
Clase 33
Insertando registros con sequelize
- importar el modelo proyectos en el controlador
- sino hay errores, insertar el registro (promises)
Clase 34
Insertando registros con async await
- definir el controlador como async
- definir la consulta con await
- redireccionar al home
Clase 35
Habiliar express validator, sanitizar los datos enviados a bd
- instalar express-validator
- crear una variable apartir del express-validator (check)
- validar los campos en las rutas antes de enviar al controlador
Clase 36
Generando una url de proyecto Creando una url unica para cada proyecto, reemplazar espacios por -
- limpiar la tabla
- instalar slug
- importar slug en el controlador
- agregar url a la creacion del registro
Clase 37
Utilizando los hooks de sequelize para generar una URL automaticamente
- en el modelo de proyectos despues de la definicion agregar un hook
- crear un hook antes de insertar en la base de datos
Clase 38
Generando una URL unica para proyectos, insertar en la bd una url unica
- instalar shortid
- importar shortid en el modelo
- crear la url con el id unico
Clase 39
Consultando la bd y pasando el resultado a la vista, se consultaran los proyectos creados y se mostran en el home
- en el controlador de proyectos consultar todos los proyectos
- pasar los proyectos obtenidos a la vista
- en el layout mostrar los proyectos obtenidos del controlador
Clase 40
Creando un helper para visualizar los datos obtenidos de la db
- crear un archivo helpers.js
- crear una funcion que tome un objeto y lo retorne con stringify
- importar el helpers en el index
- despues de las vistas hacer publico el vardump para toda la aplicacion (res.locals, next)
- mostrar los proyectos con el vardump en el layout
Clase 41
Pasando un helper hacia la vista y comprendiendo mejor el middleware
- en el controlador es necesario llamar el helper con res.locals.nombreHelper
Clase 42
Agregando routing a los distintos proyectos
- en el layout ingresar el routing a los proyectos (/proyectos/)
- crear la ruta para el proyecto seleccionado (comodin) (proyectoPorUrl)
- Crear el controlador
- mostrar por consola el valor de la url del proyecto
Clase 43
Finalizando el routing para cada proyecto
- en el controlador buscar el proyecto por url
- validar sino hay proyectos
- enviar los datos del proyecto a la vista tareas
- crear la vista tareas
Clase 44
Crear el formulario con las acciones para el proyecto editar y eliminar
- en la vista tareas agregar el nombre del proyecto al nombre de la pagina
- en la vista tareas agregar link boton editar proyecto
- en la vista tareas agregar boton eliminar proyecto
- crear ruta para llegar al formulario de editar proyecto
- direccionar el link boton editar a la ruta que creamos
- crear el metodo del controlador que establecimos en la ruta
- en el controlador enviar a la misma vista de nuevo proyectos, enviar proyectos
Clase 45
Consultando el proyecto actual y los proyectos existentes en un promise
- obtener el proyecto en el controlador(formulario editar ) agregar una consulta por id
- pasar el proyecto obtenido a la vista (nuevoProyecto)
- las dos consultas del controlador se trabajaran con promise.all, retirar el await que ya existia
Clase 46
Creando el formulario para editar el proyecto
- Crear carpetas de mixins
- Crear archivo crearProyecto
- Cortar el formulario de la vista nuevoProyecto.pug y pegar en el archivo creado
- Sintaxis de mixin
- Incluir el mixin en el archivo nuevoProyecto.pug (inlcuir y llamar)
- Modificar el action de nuevo-proyecto para cuando es un proyecto nuevo o uno existente
Clase 47
Guardando los cambios cuando un proyecto es modificado en su nombre
- creamos la ruta para actualizar el proyecto
- creamos el controller para actualizar
- llamamos el modelo del proyecto y utilizamos el metodo update de sequelize
Clase 48
Configurando webpack
- instalacion de babel-loader
- instalar la libreria concurrently
- crear uun archivo de configuracion de webpack
- crear archivo public/js/app.js (este sera el punto de entrada)