Novecento Normal
Novecento Demibold
Novecento Bold
11/01/2012
La Base de Données tranquille
J’ai récemment eu besoin d’interagir avec une Base de Données sans me soucier de son format. J’ai donc pensé à Active Record.
Active Record fait partie des gems que vous connaissez si vous utilisez Ruby on Rails. Dans un script Ruby on peut procéder comme ceci :
Ruby
require 'rubygems'
require 'active_record'
require 'yaml'
require 'awesome_print'
# soit il y a un argument soit c'est "production" qui est pris en compte
dataBaseEnv = ARGV[0] || 'production'
# mon config.yml sera le même que celui généré par défaut dans une apply rails
config = YAML::load(IO.read('config.yml'))
class Banana < ActiveRecord::Base
set_table_name :bananas
end
# on établit la connexion en fonction de l'environnement choisi
ActiveRecord::Base.establish_connection(config[dataBaseEnv])
ap Banana.find(:all)
Ce petit script nous retournera donc toutes les entrées de la table bananas. Et il marchera sans se soucier du type de la Base de Données, pour peu que la gem adéquate soit installée, par exemple sqlite3 ou mysql2.
De plus, vous pouvez choisir l’environnement de votre Base de Données en ajoutant un argument au lancement du script :
ou
etc.
Voilà, il ne vous reste plus qu’à suivre les liens utiles :