Merb y DataMapper - el acceso a la información de conexión de base de datos?
-
09-09-2019 - |
Pregunta
Estoy usando Merb y DataMapper con una base de datos MySQL. Quiero tener acceso a la base de datos de nombre, usuario y la contraseña de una tarea Rake para mi Merb aplicación. Creo que podría YAML.load()
la del database.yml, pero que parece fea. ¿Alguna idea?
Solución
desc "outputs database connection parameters"
task :db_conn => :merb_env do |t|
puts "Username: #{DataMapper.repository.adapter.uri.user}"
puts "Password: #{DataMapper.repository.adapter.uri.password}"
puts "Database: #{DataMapper.repository.adapter.uri.path.split('/').last}"
end
Lo interesante no es el bit => :merb_env
. Esto asegura que la tarea "merb_env" ha ejecutado antes que tu tarea. Esto simplemente carga el entorno Merb, momento en el que se puede proceder a inspeccionar su configuración.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow