Les joies de datamapper
Datamapper est un ORM (Object Relational Mapper) écrit en ruby et permettant de lier facilement Ruby à n’importe quelle base de données (mysql, postgresql…).
Grand fan de du framework web Sinatra, j’utilise souvent datamapper…et je tombe souvent dans ses pièges:
- Etre vigilant sur les relations 1-n ou n-n et sur l’utilisation des objets pour éviter de charger en mémoire des centaines de données inutiles (cela m’est arrivé sur Veilleur, voir le post correspondant
- Vérifier systématiquement que les données sont bien sauvegardées: par défaut (c’est à dire sans l’option #DataMapper::Model.raise_on_save_failure = true), aucun message ne prévient de l’erreur
- Mettre en place un système de pour récupérer les erreurs envoyées par Datamapper via notamment: xx.errors.inspect
Ces quelques points simples permettent de gagner beaucoup de temps!