En esta página:
En la parte anterior llamada Creando una Aplicación Web similar a SoundCloud con Ruby on Rails 6 y Angular 10 – Parte 4, creamos 2 controladores, uno para el módulo configuración y otro para el módulo canciones del usuario, cada controlador nos creo sus páginas HTML correspondientes y que usaremos posteriormente, en esta parte 5 continuaremos con la creación de nuestro proyecto SoundCloud, vamos con ello.
Partes
Antes de continuar te invito a leer los siguientes artículos:
- Que es Ruby on Rails (RoR) y otros detalles
- Tu primer Hola Mundo con Ruby on Rails
- Como crear un CRUD con Ruby on Rails 6 y Bootstrap 4 – Parte 1
- Como Integrar React JS (16.13.1) en Ruby on Rails (6.0.3.2)
- Lee más artículos en la categoría Ruby on Rails.
Asimismo te invito a escuchar el Podcast: “17 – Porque El Lenguaje De Programación Python Es Tan Popular”:
Spotify | SoundCloud | Apple Podcasts |
Bien ahora continuemos con el Post: Creando una Aplicación Web similar a SoundCloud con Ruby on Rails 6 y Angular 10 – Parte 5.
Ahora vamos a crear el controlador Usuarios que va servir para gestionar los usuarios que se registran en la plataforma y va alimentar al back y también a la parte publica (front).
Usuarios
Para crear este controlador ejecuto el siguiente comando en mi consola de comandos, a este comando le voy a pasar 4 argumentos que serán las vistas administrativas (index, leer, crear y actualizar) para gestionar los usuarios registrados en la plataforma.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
rails g controller usuarios index leer crear actualizar create app/controllers/usuarios_controller.rb route get 'usuarios/index' get 'usuarios/leer' get 'usuarios/crear' get 'usuarios/actualizar' invoke erb create app/views/usuarios create app/views/usuarios/index.html.erb create app/views/usuarios/leer.html.erb create app/views/usuarios/crear.html.erb create app/views/usuarios/actualizar.html.erb invoke test_unit create test/controllers/usuarios_controller_test.rb invoke helper create app/helpers/usuarios_helper.rb invoke test_unit invoke assets invoke scss create app/assets/stylesheets/usuarios.scss |
Tras ejecutar el comando anterior, se me ha creado un archivo llamado usuarios_controller.rb en app > controllers > usuarios_controller.rb
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 |
/soundcloudapp ├── /app ├── /assets ├── /channels ├── /controllers ├── /concerns ├── application_controller.rb ├── configuracion_controller.rb ├── cancionesusuarios_controller.rb ├── usuarios_controller.rb // Se ha creado este Archivo ├── /helpers ├── /javascript ├── /jobs ├── /mailers ├── /models ├── /views ├── /bin ├── /config ├── /db ├── /lib ├── /log ├── /public ├── /storage ├── /test ├── /tmp ├── /vendor ├── .gitignore ├── .ruby-version ├── config.ru ├── Gemfile ├── Gemfile.lock ├── package.json ├── Rakefile ├── Gemfile.lock ├── README.md |
Adicionalmente se me ha creado otros archivos como las vistas HTML, estas vistas se han creado en app > views > usuarios
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 |
/soundcloudapp ├── /app ├── /assets ├── /channels ├── /controllers ├── /helpers ├── /javascript ├── /jobs ├── /mailers ├── /models ├── /views ├── /cancionesusuarios ├── /configuracion ├── /layouts ├── /usuarios // Vistas HTML del módulo 'usuarios' ├── actualizar.html.erb ├── crear.html.erb ├── index.html.erb ├── leer.html.erb ├── /bin ├── /config ├── /db ├── /lib ├── /log ├── /public ├── /storage ├── /test ├── /tmp ├── /vendor ├── .gitignore ├── .ruby-version ├── config.ru ├── Gemfile ├── Gemfile.lock ├── package.json ├── Rakefile ├── Gemfile.lock ├── README.md |
Listo, ahora pasemos a crear el siguiente controlador.
Historial de Reproducciones
Este controlador va gestionar las canciones que han sido escuchadas por los usuarios en la plataforma. Ejecuto el siguiente comando para crear este controlador, igual que con el anterior controlador, le paso 4 argumentos para que genere 4 vistas HTML para este módulo.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
rails g controller historialreproducciones index leer crear actualizar create app/controllers/historialreproducciones_controller.rb route get 'historialreproducciones/index' get 'historialreproducciones/leer' get 'historialreproducciones/crear' get 'historialreproducciones/actualizar' invoke erb create app/views/historialreproducciones create app/views/historialreproducciones/index.html.erb create app/views/historialreproducciones/leer.html.erb create app/views/historialreproducciones/crear.html.erb create app/views/historialreproducciones/actualizar.html.erb invoke test_unit create test/controllers/historialreproducciones_controller_test.rb invoke helper create app/helpers/historialreproducciones_helper.rb invoke test_unit invoke assets invoke scss create app/assets/stylesheets/historialreproducciones.scss |
Luego de ejecutar el comando anterior, Rails nos ha creado el archivo llamado historialreproducciones_controller.rb en app > controllers > historialreproducciones_controller.rb
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 |
/soundcloudapp ├── /app ├── /assets ├── /channels ├── /controllers ├── /helpers ├── /javascript ├── /jobs ├── /mailers ├── /models ├── /views ├── /cancionesusuarios ├── /configuracion ├── /historialreproducciones // Vistas HTML del módulo 'historialreproducciones' ├── actualizar.html.erb ├── crear.html.erb ├── index.html.erb ├── leer.html.erb ├── /layouts ├── /usuarios ├── /bin ├── /config ├── /db ├── /lib ├── /log ├── /public ├── /storage ├── /test ├── /tmp ├── /vendor ├── .gitignore ├── .ruby-version ├── config.ru ├── Gemfile ├── Gemfile.lock ├── package.json ├── Rakefile ├── Gemfile.lock ├── README.md |
Y hasta aquí hemos creado los 4 controladores o archivos: cancionesusuarios_controller.rb, configuracion_controller.rb, historialreproducciones_controller.rb y usuarios_controller.rb para el administrador de la plataforma.
Ten Paciencia, lo que quiero es que entiendas todo el proceso para Crear este Proyecto y no llenarte el capitulo de mucho contenido porque te puedes marear y no tendrás un óptimo aprendizaje.
Nota (s)
- En la siguiente parte vamos a organizar las vistas del administrador, para posteriormente comenzar con la creación de las vistas administrativas.
- No olvides que debemos utilizar la tecnología para hacer cosas buenas por el mundo.
Síguenos en nuestras Redes Sociales para que no te pierdas nuestros próximos contenidos.