J'ai une application de rails où je stocke created_at en tant que datetime (standard). Je suis en train de créer un formulaire de recherche et je trouve que je dois utiliser find_by_sql pour faire des sous-requêtes complexes. Le formulaire a une plage de dates (pas de temps) pour rechercher des éléments dans le champ created_at.Comment correctement convertir ou interroger la plage de dates pour Rails/MySQL DateTime Colonne
Le problème que je trouve que si je passe juste la chaîne de date pour la plage de requête ...
... status_changes.created_at between '2009-01-24' and '2009-03-12' ...
Je reviens des documents qui ont une date created_at de 2009-01-23 17: 10:39 -0800 car il est stocké dans la base de données en tant que 2009-01-24 01:10:39 (UTC)
Comment puis-je résoudre ce problème afin que le résultat ne renvoie pas l'enregistrement en question?
Il semble que je soit besoin de convertir la plage de dates UTC à être spécifique ou dire à find_by_sql recherche en fonction de fuseau horaire au lieu de lire la colonne comme ... utc
Des preneurs?
John
Merci Jordan. Je ne suis pas sûr de pouvoir le tester de sitôt, mais votre réponse semble plausible. – Streamline