Merci Michel

Cette méthode a l'air sympa.
J'ai juste rajouter dans le contrôleur "Saisie" la ligne
"for_date_saisie". Mais maintenant plus rien ne fonctionne, j'ai :
Status: 500 Internal Server Error Content-Type: text/html
500 Internal Server Error

Je suis désolée, je débute et pareil il faut installer une gem pour
que ça fonctionne ou autres mais je ne sais pas.
Merci de votre aide.

On 4 déc, 11:18, Michel Belleville <[email protected]>
wrote:
> Nota bene : count marche extrêmement bien avec des named_scopes. Exemples :
>
> En admettant que tu fasse tes modèles Saisie et Personne comme ça :
>
> class Personne < AR::B
> ...
> has_many :saisies
> ...
> end
>
> class Saisie < AR::B
> ...
> belongs_to :personne
> named_scope for_date_saisie, lambda { |date| { :conditions => { :date_saisie
> => date } } }
> named_scope for_matin_aprem, :conditions => { :matin_aprem => true }
> ...
> end
>
> Ca va faire précisément le count que tu veux en une seule requête :
>
> personne.saisies.for_date_saisie(date).for_matin_aprem.count
>
> Magik
>
> Michel Belleville
>
> 2009/12/4 Cyril Mougel <[email protected]>
>
>
>
> > pestak a écrit :
> > > Bonjour,
>
> > > Lorsque j'essaye de compter le nombre d'enregistrement de ma table
> > > saisies suivant une date et une personne j'obtiens l'erreur "too few
> > > arguments".
> > > Comment dois-je procéder?
> > > Merci d'avance
>
> > > # recherche si la saisie n'existe déjà pas pour la journée
> > > saisie_rech_matin = Saisie.count_by_sql(["SELECT count(*) FROM saisies
> > > WHERE date_saisie=? and matin_aprem=1 and
> > > personne_id=?",@saisie_matin.date_saisie,@saisie_matin.personne_id])
> > > saisie_rech_aprem = Saisie.count_by_sql(["SELECT count(*) FROM saisies
> > > WHERE date_saisie=? and matin_aprem=2 and
> > > personne_id=?",@saisie_aprem.date_saisie,@saisie_aprem.personne_id])
>
> > > #saisie_rech_matin = Saisie.count( :conditions =>["date_saisie=? and
> > > matin_aprem=1 and
> > > personne_id=?",@saisie_matin.date_saisie,@saisie_matin.personne_id] )
> > > #saisie_rech_aprem = Saisie.count( :conditions =>["date_saisie=? and
> > > matin_aprem=1 and
> > > personne_id=?",@saisie_aprem.date_saisie,@saisie_aprem.personne_id] )
>
> > > #si pas de saisie pour la date et la personne
> > > if saisie_rech_matin==0 and saisie_rech_aprem==0
> > >    ....
>
> > Aucun interet de faire du SQL dans tes requêtes. Passe par un bon vieux
> > AR#count
>
> > --
> > Cyril Mougel
> >http://blog.shingara.fr/
--~--~---------~--~----~------------~-------~--~----~
Vous avez reçu ce message, car vous êtes abonné au groupe "Railsfrance" de 
Google Groups.
Pour transmettre des messages à ce groupe, envoyez un e-mail à l'adresse 
[email protected]
Pour résilier votre abonnement envoyez un e-mail à l'adresse 
[email protected]
-~----------~----~----~----~------~----~------~--~---

Répondre à