我使用的Merb和DataMapper的与MySQL数据库。我想从一个Rake任务访问数据库的名称,用户和密码我Merb的应用程序。我想我可以YAML.load()的中的database.yml,但似乎丑陋。任何想法?

有帮助吗?

解决方案

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

有趣的部分存在=> :merb_env位。这可确保您的任务不前的“merb_env”任务已执行。这只是加载了Merb的环境,此时您可以继续检查其配置。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top