On 10/1/07, Pierre Valade <[EMAIL PROTECTED]> wrote:
>
>
> Mais si je déclare une méthode dans Class Product, elle ne
> s'appliquera pas à un array d'objet Product non ?
La méthode classique est l'idom @products.collect &:method ce qui est
équivalent à @products.collect {|p| p.method }
Malheureusement (?) un resultset dans rails n'est qu'une instance de Array
donc si tu veux lui rajouter des methodes il te faudra l'encapsuler dans un
objetProxy ou pour ton cas simple surcharger la classe Array.
IMHO pour ton exemple @resultset.map &:destroy, @resultset.collect &:id ou
même @resultset.find_all &:spam? sont suffisamment DRY, sans compter que
dans le vrai monde ce genre de chose devrait être fait coté SQL pour éviter
l'overhead.
Maintenant si tu veux rajouter des fonctionnalités complexe genre
pagination, taxonomy, import massif ou conversion, alors les décisions
d'architectures sont à prendre au cas par cas, to_csv a plus sa place comme
method d'instance de Array que next_page...
Renaud
--~--~---------~--~----~------------~-------~--~----~
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]
-~----------~----~----~----~------~----~------~--~---