J'ai quelques conditions à transmettre à un finder. Le problème est que je ne veux pas passer ces conditions de manière usafety. Imaginons donc que je reçoive un hash :
hash = {:start_date=>'2009-11-01',:end_date=>'2010-01-23'}
J'aimerais le transmettre à mon chercheur de la manière suivante :
Model.find(:all,:conditions=>"created > '#{start_date}' and created < '#{end_date}'")
Le problème est qu'il n'est pas sûr et que je suis exposé à des problèmes d'injection SQL. Ma question est la suivante : quelle est la meilleure façon de composer cette condition ?
Je veux le faire de manière dynamique. Par exemple, je fais aujourd'hui comme :
find_condition = ['created > ? and created < ?','2009-10-01','2010-01-01']
Model.find(:all,:conditions=>find_condition)