On 7/1/07, Cédric B <[EMAIL PROTECTED]> wrote:
>
> Bonjour à tous, je rencontre un problème pour paginer sous rails à
> partir du moment ou je souhaite définir des conditions par rapport au
> clés etrangères de ma table.
>
> J'ai une table "Hotel" et une table "Ville", un Hotel est implanté dans
> une ville, on a donc un champ "ville_id" dans Hotel.
> Mes modèles et relations Active Record sont correctement en place et on
> peut faire hotel.ville.nom pour récuper le nom de la ville dans laquelle
> l'hotel est implanté.
>
> Cependant je ne sais pas comment paginer les hotels dont on préciserait
> le nom de la ville.
>
> J'utilise cette syntaxe :
> paginate :hotels , :order => 'id', :per_page => 10, :conditions xxxxx
> Où je ne sais pas quoi mettre dans conditions pour lui dire de
> selectionner les hotels dont la vile est "paris" par exemple.
>
> Une idée ?
>

Il faut penser un peu en SQL. Il faut commencer par un join :

:join => 'INNER JOIN villes ON villes.id = hotels.ville_id'

En suite il faut dire la condition :

:conditions => ['villes.name = ?', 'paris']

Par contre attention la pagination est en cours de déprécation. Ainsi
dans la future version de Rails la 1.2.4, l'objet Pagination n'existe
pas. il faudra utiliser un plugin.

-- 
Cyril Mougel

--~--~---------~--~----~------------~-------~--~----~
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 à