Désolé de persiter, mais voila, j'ai un peu progréssé
Dans mon controlleur j'ai
@region = Region.find(:first, :conditions => ['name = ?', 'bordeaux'])
@wines = Wine.find(:all, :conditions => ['color = ? AND region_id = ?',
'rouge', @region.id], :order => 'name ASC')
Dans ma vue j'ai
<% @wines.group_by(&:appellation).each do |appellation, wines| %>
<%= appellation.name %>
<br />
<% wines.each do |w| %>
<%= w.name %><br />
<% end %>
<% end %>
Exactement ce que je voulais, par contre, puis-je me servir du premier
exemple donné pour ne pas préciser la région et la couleur comme je l'ai
fait au dessus
Merci
2008/12/2 Julien Castelain <[EMAIL PROTECTED]>
> Bon je galère toujours autant,
>
> Voici ce que j'ai fait
>
> @region = Region.find(:first, :conditions => ['name = ?', 'bordeaux'])
>
> @wines = Wine.find(:all, :conditions => ['color = ? AND region_id = ?',
> 'rouge', @region.id],
> :order => 'name ASC')
>
> @wines = @wines.group_by(&:appellation_id).each do |appellation_id, w|
>
> end
>
> Mais ça ressemble à n'importequoi, comment pourrais-je faire pour sortir
> une liste du style
>
> Region
> Couleur
> Appellation
> Vin
>
> Biens sur toutes ces infos (Region, Couleur, Appellation et Vin) ne doivent
> figurer qu'une fois dans cette liste
> A les bonnes prises de tête quand on a un niveau de merde comme le mien ça
> fatique :)
>
> Merci encore
>
>
>
> 2008/12/2 Julien Castelain <[EMAIL PROTECTED]>
>
>> Sinon, je me demandais si il n'y avait pas moyen de grouper tout cela avec
>> GROUP BY
>>
>> 2008/12/2 Julien Castelain <[EMAIL PROTECTED]>
>>
>>> Merci à vous, un grand pas a été franchi,
>>> maintenant je vais tenter de regrouper le tout par région, couleur et
>>> appellation car pour l'instant quand j'essaie d'afficher tout cela j'ai
>>> encore
>>>
>>> Bordeaux
>>> Rouge
>>> Haut Medoc
>>> Haut Medoc Rouge 1
>>> Bordeaux
>>> Rouge
>>> Haut Medoc
>>> Haut Medoc Rouge 2
>>> Bordeaux
>>> Rouge
>>> Haut Medoc
>>> Haut Medoc Rouge 3
>>>
>>> et je voudrais
>>>
>>> Bordeaux
>>> Rouge
>>> Haut Medoc
>>> Haut Medoc Rouge 1
>>> Haut Medoc Rouge 2
>>> Haut Medoc Rouge 3
>>>
>>>
>>> C'est pas évident à comprendre les blocks en ruby, en tout cas c'est très
>>> sympa de votre part
>>> Qui sait, il y aura peut etre du boulot pour quelqu'un si je persiste à
>>> echouer
>>>
>>> A +
>>>
>>>
>>>
>>>
>>> On Tue, Dec 2, 2008 at 2:05 PM, Cyril Mougel <[EMAIL PROTECTED]>wrote:
>>>
>>>>
>>>> Julien Castelain wrote:
>>>> > Bonjour à tous,
>>>> >
>>>> > Je vais tenter de vous exposer mon problème en essayant d'etre clair,
>>>> > en gros je n'arrive pas à "lier" certaines tables,
>>>> >
>>>> > J'ai une table "wines" qui ressemble à ceci :
>>>> >
>>>> > wines
>>>> > -- id
>>>> > -- name
>>>> > -- color
>>>> > -- region_id
>>>> > -- appellation_id
>>>> >
>>>> > exemple (1, "Mon vin", "Rouge", 1, 1)
>>>> >
>>>> > J'ai egalement les tables regions et appellations qui ressemblent
>>>> > elles à ceci :
>>>> >
>>>> > region
>>>> > -- id
>>>> > -- name
>>>> >
>>>> > exemple (1, "Bordeaux")
>>>> >
>>>> > appellation
>>>> > -- id
>>>> > -- bale
>>>> >
>>>> > exemple (1, "Chateau du slip")
>>>> >
>>>> > Voici ce que je souhaite faire (enfin mon client pas moi)
>>>> >
>>>> > Afficher
>>>> >
>>>> > - Region
>>>> > -- Couleur
>>>> > --- Appellation
>>>> > ---- Nom du vin
>>>> >
>>>>
>>>> Tu fais dans le même ordre :
>>>>
>>>> Region.all.each do |r|
>>>> puts "- #{r.name}"
>>>> r.wines.each do |w|
>>>> puts "\t-- w.color"
>>>> puts "\t\t --- w.appelation.name"
>>>> puts "\t\t\t --- w.name"
>>>> end
>>>> end
>>>>
>>>> --
>>>> 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]
-~----------~----~----~----~------~----~------~--~---