Base de datos

Configuración de una base de datos

Casi todas las aplicaciones de Rails interactuarán con una base de datos. Puede conectarse a la base de datos configurando una variable de entorno ENV['DATABASE_URL'] o usando un archivo de configuración llamado config/database.yml.

Usando el archivo config/database.yml puede especificar toda la información necesaria para acceder a su base de datos:

development:
      adapter: postgresql
      database: blog_development
      pool: 5

Esto se conectará a la base de datos llamada blog_development usando el adaptador postgresql. Esta misma información puede almacenarse en una URL y proporcionarse a través de una variable de entorno como esta:

ENV['DATABASE_URL'] # =>
"postgresql://localhost/blog_development?pool=5"

El archivo config/database.yml contiene secciones para tres entornos diferentes en los que Rails se puede ejecutar de forma predeterminada:

  • El entorno development se utiliza en su computadora de desarrollo/local a medida que interactúa manualmente con la aplicación.
  • El entorno de test se utiliza cuando se ejecutan pruebas automatizadas.
  • El entorno de production se usa cuando implementa su aplicación para que la use el mundo.

Si lo desea, puede especificar manualmente una URL dentro de su config/database.yml.

development:
    url:  postgresql://localhost/blog_development?pool=5

The config/database.yml file can contain ERB tags <%= %>. Anything in the tags will be evaluated as Ruby code. You can use this to pull out data from an environment variable or to perform calculations to generate the needed connection information.

No tiene que actualizar las configuraciones de la base de datos manualmente. Si observa las opciones del generador de aplicaciones, verá que una de las opciones se llama --database. Esta opción le permite elegir un adaptador de una lista de las bases de datos relacionales más utilizadas. Incluso puede ejecutar el generador repetidamente: cd .. && rails new blog --database=mysql. Cuando confirme la sobrescritura del archivo config/database.yml, su aplicación se configurará para MySQL en lugar de SQLite. A continuación se muestran ejemplos detallados de las conexiones de base de datos comunes.

¿Cómo funciona Fígaro?

Figaro fue escrito para facilitar la configuración segura de aplicaciones Rails.

Los valores de configuración suelen incluir información confidencial. Figaro se esfuerza por ser seguro de forma predeterminada al fomentar una convención que mantiene la configuración fuera de Git.

¿Cómo funciona Fígaro?

Figaro está inspirado en la metodología de la aplicación Twelve-Factor, que establece:

La aplicación de doce factores almacena la configuración en variables de entorno (a menudo abreviadas como env vars o env). Env vars son fáciles de cambiar entre implementaciones sin cambiar ningún código; a diferencia de los archivos de configuración, hay pocas posibilidades de que se registren en el repositorio de código accidentalmente; y, a diferencia de los archivos de configuración personalizados u otros mecanismos de configuración, como las propiedades del sistema Java, son un estándar independiente del idioma y del sistema operativo.

Esto es sencillo en entornos de producción, pero los entornos de desarrollo local a menudo se comparten entre múltiples aplicaciones, lo que requiere múltiples configuraciones.

Figaro analiza un archivo YAML ignorado por Git en su aplicación y carga sus valores en ENV.

Empezando

Agregue Figaro a su Gemfile y bundle install:

Leave a Reply

Your email address will not be published. Required fields are marked *