This is a Sinatra application template.
Punto de entrada de la aplicación. En este archivo se define la aplicación Sinatra que es ejecutada por Rack. Aquí se configura el entorno y se requiren todos los archivos y gemas necesarias para que la aplicación funcione. Se realizan ademas tareas de inicialización como por ejemplo establecer la conexión con la base de datos.
contiene archivos de configuración generales para la aplicación (por ejemplo, configuración de las conexiones a las bases de datos)
Contiene la definición de las clases que forman el modelo de la aplicación. Todas los archivos .rb en este directorio (y sub-directorios) son requeridos en por app.rb (ver línea XXXX), de manera que toda clase que se encuentre definida en esta carpeta, puede ser utilizada en la applicación.
contiene las vistas, tanto layout como partials, de la aplicación. Se recomienda usar subdirectorios para crear subagrupaciones de vistas relacionadas bajo algún criterio (por ejemplo: todas las vistas del ABM de usuarios van en /views/users)
Si son necesarias crear tareas Rake, estas deben ir en este directorio. Todos los archivos .rb en este directorio (y sub-directorios) son cargados en por Rakefile (ver línea 4)
Los archivos en directorio y sub-directorios son servidos como archivos estáticos por sinatra. Aquí deberán ubicarse los assets (imágenes, hojas de estilo, javascripts). De esta manera un request GET a /css/styles.css, no pasará por el ruteo de Sinatra si existe el archivo en /public/css/styles.css
El template tiene configurado como ORM ActiveRecord (usando sqlite3) Tanto en la Documentación oficial de Rails como las guías de rails hay información detallada sobre su funcionamiento.
Se proveen tareas para correr los tests (ver sección [Tests]) y para manejar la integración con el ORM (crear, borrar y modificar (mediante migraciones) las bases de datos).
La gema sinatra-activerecord provee varias tareas Rake
para manejar la creación y modificación de la base de datos.
Lea el readme para saber qué tareas provee y cómo utilizarlas.
Para ver un listado de las tareas Rake disponibles puede ejecutar:
$ bundle exec rake -T
Clonar el repositorio:
$ git clone git@github.com/TTPS-ruby/sinatra_app_template.git
Borrar el origin seteado por git al clonar
$ git remote rm origin
Instalar todas las gemas especificadas en el Gemfile:
$ bundle install
Para correr los tests se entrega una tarea rake que corre todos los tests bajo /test. Esta está configurada como la tarea por defecto por lo tanto sólo es necesario ejecutar:
$ bundle exec rake
Si se requiere ejecutar un archivo de test particular puede directamente ejecutar:
$ bundle exec ruby test/<archivo>
Para ejecutar los tests dentro de un archivo cuyo nombre coincida con una expresión regular
$ bundle exec ruby test/<archivo>.rb -n /<expresión-regular>/
Para ejecutar la aplicación se utiliza el comando rackup
$ bundle exec rackup