2011-01-01 5 views
1

J'essaie d'obtenir tous les documents qui ont un champ datetime (non créé) dans un mois donnéactiverecord .Find datetime par mois

Par exemple,

month = 1 
@events_this_month = Events.find :all, :conditions => {:date.month => month} 

De toute évidence pas la façon de le faire (le symbole n'est pas un objet date!) mais j'espère que cela vous donne une idée de ce que j'espère!

Répondre

1

J'ai créé un petit bijou juste pour cette raison appelée by_star, Vous pouvez trouver des événements pour un mois donné en utilisant cette syntaxe:

Event.by_month(2) 

Ce code serait vous obtenir tous les événements pour le 2ème mois du oui. Il fait également des noms de mois et prend des objets Date et Heure.

Devrait être parfait pour vos besoins.

Un petit conseil supplémentaire: vos classes de modèles doivent être singularisées. C'est la convention de Rails.

+0

Merci corrigera (camping en passant, mais je suppose qu'il s'applique toujours!) – minikomi

+0

@minikomi: Cela devrait fonctionner avec Active Record dans n'importe quel contexte. –

+0

Désolé de pousser à nouveau après vous avoir donné la tique - ce n'est pas coopérer avec le camping à cause de Time.zone.now.year ... c'est centré sur les rails, j'ai peur. . . – minikomi

Questions connexes