PDF de programación - Aplicacion web de bases de datos usando Ruby on Rails

Imágen de pdf Aplicacion web de bases de datos usando Ruby on Rails

Aplicacion web de bases de datos usando Ruby on Railsgráfica de visualizaciones

Publicado el 11 de Febrero del 2019
1.148 visualizaciones desde el 11 de Febrero del 2019
843,1 KB
79 paginas
Creado hace 1a (18/10/2018)
Escola Tècnica Superior d’Enginyeria Informàtica

Universitat Politècnica de València

Aplicación Web de bases de datos usando el

Framework Ruby on Rails

TRABAJO FIN DE GRADO

Grado en Ingeniería Informática

Autor: Daniel Arastey Aroca

Tutor:

José Vicente Busquets Mataix

Curso 2017-2018

Resum
Aquest treball està centrat en la creació d’una plataforma autoallotjada de
blogs personals. Aquesta plataforma permet que el seu usuari comparteixi pú-
blicament continguts de tot tipus, i si així ho desitja, que els seus lectors puguin
compartir les seues opinions a la secció de comentaris de cada entrada. Aquest
projecte constitueix un senzill exemple de com construïr una aplicació mitjan-
çant el framework Ruby on Rails, a més de mostrar com es realitzen les operacions
bàsiques sobre bases de dades relacionals amb aquesta ferramenta.
Paraules clau: Ruby, Rails, bases de dades, desenvolupament web, MVC

Resumen
Este trabajo está centrado en la creación de una plataforma autoalojada de
blogs personales. Esta plataforma permite que su usuario comparta de forma pú-
blica contenidos de todo tipo, y si así lo desea, que sus lectores puedan mostrar
sus opiniones en la sección de comentarios de cada entrada. Este proyecto consti-
tuye un sencillo ejemplo de cómo construir una aplicación mediante el framework
Ruby on Rails, además de mostrar cómo se realizan las operaciones básicas sobre
bases de datos relacionales con dicha herramienta.
Palabras clave: Ruby, Rails, bases de datos, desarrollo web, MVC

Abstract
This thesis is focused on the creation of a self-hosted personal blogging plat-
form. This platform allows its user to share publicly contents of any kind, and
if they want to, its readers will be able to show their opinions in the comments
section of every post. This project represents a simple example of how to build
an application using the Ruby on Rails Framework, as well as show how basic
operations on relational databases are performed with said tool.
Key words: Ruby, Rails, databases, web development, MVC

III

Índice general

V

IX

1
1
1
2
2
2
3
3
4
4
5
5
5
5
6
7
7
7
8
8
8
8
9
9
10
11
11
12
12
14
15
15
16
17
17
17

.
.
.
.
.

.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.

.
.
.
.
.
.
.

.
.

.
.
.
.
.

.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.

.
.
.
.
.
.
.

.
.

.
.
.
.
.

.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.

.
.
.
.
.
.
.

.
.

.
.
.
.
.

.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.

.
.
.
.
.
.
.

.
.

.
.
.
.
.

.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.

.
.
.
.
.
.
.

.
.

.
.
.
.
.

.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.

.
.
.
.
.
.
.

.
.

.
.
.
.
.

.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.

.
.
.
.
.
.
.

.
.

.
.
.
.
.

.
.
.

.
.
.
.
.
.
.
.
.
.
.

.
.

.
.
.
.
.
.
.

.
.

. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .

. . . . . . . . .
. . . . . . . . .
. . . . . . . . .

. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .

. . . . . . . . .
. . . . . . . . .

. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .

. . . . . . . . .
. . . . . . . . .

Índice general
Índice de figuras

1 Introducción

.
.

.
.

. .
. .

.
1.1 Motivación .
.
1.2 Objetivos .
.
1.3 Estructura de la memoria .

.
.
.
1.3.1 Nota acerca de las imágenes .
.

1.4 Agradecimientos

.
.
.

.
.
.

.
.
.

.
.
.

.
.
.

.
.

.
.

.
.

.

.

.

.

.

.

.

.

.

.
2 El lenguaje de programación Ruby
.
.
.

2.1 Características .
.
2.2 Software en Ruby relevante .
2.3 Las gemas de Ruby .
.

.
3 El framework Ruby on Rails

.

.

.

.

.

.

.

.

.
.
.

.
.
.

.
.
.

.
.
.

.
.
.
.
.

.
.
.

.

.

.

.
.

.
.
.

.
.
.

.
.
.

.
.
.

.
.
.

.
.
.

3.1
3.2 Ruby on Rails .

¿Qué es un framework?
.

.
.
3.2.1 Resumen técnico .

.
.
.
3.3 El patrón Modelo-Vista-Controlador .
.
.
.
.
.
.
.

.
.
.
.
3.4.1 La clase ActiveRecord .
3.4.2 La clase ActionController
3.4.3 La clase ActionView .
.

.
.
.
3.4 Rails y el patrón MVC .

.
3.3.1 Modelo .
3.3.2 Vista .
.
.
3.3.3 Controlador .

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.

.
.

.
.

.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

4 Base de datos: MariaDB
.
.

4.1 Definición .
. .
4.2 Características .
5 Entorno de desarrollo
5.1 El IDE: Atom . .
.
.
5.2 El sistema de control de versiones: Git
.
.
.
.
.
.
.
.
.
.

.
.
5.3 Las hojas de estilo: Bootstrap .
.
5.4 Presentación de texto: Markdown .
.
5.5 Comentarios: Disqus .
5.6 Correo: SendGrid .
.
.

5.2.1 Acerca de Git

.
.

.
.

.
.

.
.

.
.

.
.

.
.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

6 La aplicación, análisis

6.1 Análisis de requisitos .
6.2 Casos de uso . .
.

.

.

.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

V

VI

ÍNDICE GENERAL

6.3 Modelado de la aplicación .

.

.

.

.

.

.

.

.

.

.

.

.

7 La aplicación, desarrollo

.
.

.

.

.

.

.

.

.

.

.

.

.

.

.
.

.

.
.

.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

.
.

. .

7.1

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

7.2.1

7.2 Definición del modelo inicial .

.
Instalación .
Inicio del proyecto .

7.3 Creación de controladores .
.
7.4 Rutas .
.
7.5 Creación de vistas .
.

Instalación de las herramientas básicas e inicio .
.
7.1.1
.
.
7.1.2
.
.
7.1.3 Configuración de la base de datos
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
Introducción de datos de prueba .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
7.5.1 La gema Summarize .
7.5.2 El índice de posts
.
.
7.5.3 Vistas adicionales para posts .
.
.
.
.
.
.
.
7.9 Aplicación de estilos con Bootstrap .
.
7.10 Presentación de contenido .
.
.
7.11 Comentarios .
. .
7.12 Configuración . .
.
.
.
.
.
7.13 Feed RSS .

7.6 Gestión de usuarios .
.
7.7 Mailer y reinicio de contraseñas .
.
.
.
.
.

7.7.1 Mailer .
.
7.7.2 Reinicio de contraseñas .
.
.
.

.
7.8.1 Controlador .
7.8.2 Vistas .
.

7.8 Categorías .

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

. .

.
.
.

.
.
.

.
.
.

.
.
.

.
.
.

.
.
.

.
.
.

.
.
.

.
.
.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.
.
.
8 La aplicación, despliegue

.

.

.

.

.
.

.
.

.
.

Instalación de dependencias .
.
.
8.2.1 Ruby y Rails .
.
8.2.2 MariaDB .
.
.
8.2.3 Otras dependencias .
.
.
Instalación de la aplicación .
.
.

8.1 Elección del servidor e instalación inicial .
.
8.2
.
.
.
.
.

.
.
.
.
.
.
.
8.4.1 Configuración de arranque automático .
.
8.4.2
8.4.3 Cifrado con Let’s Encrypt
.

Instalación y configuración de NGINX .
.

8.3
8.4 Despliegue público .

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.
.
.
.
.
.

.

.

.

.

.

.

.

.

.

.

9 Conclusiones

9.1 Futuras mejoras .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

Bibliografía

Apéndice
A Código fuente

A.1 app/controllers .

.

.

.

.

.

.
.
.
.
A.1.1 admin_controller.rb .
.
.
A.1.2 application_controller.rb .
A.1.3 categories_controller.rb .
.
.
A.1.4 password_resets_controller.rb .

.
.
.
.

.
.
.
.

.
.

.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.
.
.
.
.

.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.

.
.
.
.
.

.

.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.

.

.
.
.
.
.

. . . . . . . . .

. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .

. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .

. . . . . . . . .

. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .

19
21
21
21
22
23
24
26
26
28
29
30
30
31
31
34
34
35
37
37
38
38
41
42
43
44
47
47
48
48
48
49
49
50
51
51
53
55
55
57

59
59
59
59
59
60

ÍNDICE GENERAL

.
.
.
.
.
.

. .

.

.

.

.
.
.
.
.
.
.

.

.
.
.
.
.
.
.

.

.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

A.2 app/mailers .

A.3 app/models .

.
.
. .
. .

A.1.5 posts_controller.rb .
A.1.6 sessions_controller .
A.1.7 users_controller.rb .
.

.
A.3.1 category.rb .
.
A.3.2 post.rb .
.
A.3.3 user.rb .
.
.

.
.
.
.
A.2.1 application_mailer.rb .
.
A.2.2 user_mailer.rb .
.
.
.
.
.
.
.
.
.
.
.
.

. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
. . . . . . . . .
A.5.1 initializers/application_controller_renderer.rb . . . . . . . .
. . . . . . . . .
A.5.2 initializers/junablog.erb .
A.5.3 initializers/mail.erb .
.
. . . . . . . . .
. . . . . . . . .
.
.
A.5.4 database.yml .
. . . . . . . . .
.
.
A.5.5 junablog.yml .
A.5.6 routes.rb .
.
.
.
. . . . . . . . .
. . . . . . . . .
.
.
.
. .
. . . . . . . . .
.
.
.
.
. . . . . . . . .
.
.
.
.
.
.
. . . . . . . . .

A.6 db .

.
.
.
A.7 Raíz del proyecto .
.

A.7.1 Gemfile .

A.6.1 seeds.rb .

A.4 app/views .
.
A.5 config .

.

.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.
.
.
.

.
.
.
.
.
.
.
.
.

.
.
.
.
  • Links de descarga
http://lwp-l.com/pdf15162

Comentarios de: Aplicacion web de bases de datos usando Ruby on Rails (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios
Es necesario revisar y aceptar las políticas de privacidad