Merci Cyril,
effectivement, rake db:migrate VERSION=0, fonctionne si il n'y a pas
eu de problème lors de la migration précédente, c'est déjà là un très
bon point ... (ca évite une manipe!).
maintenant pour mes doublons, il faut peut-être utiliser un rescue au
moment de la migration.up pour lui dire si il but sur une ligne (pour
cause de doublon) de passer la ligne et continuer à transférer.
je ne sais pas trop comment faire cela, je vais essayer d'encadrer le
product.save! avec un begin rescue et trouver l'exception qui va bien
(ce sera le contraire de ActiveRecord::RecordNotFound) ... peut-être
ActiveRecord::RecordInvalid je vous tiens au courant...
Bonne soirée
Denis
Le 13 déc. 07 à 15:40, Cyril Mougel a écrit :
> On Dec 13, 2007 6:08 PM, Denis Gesbert <[EMAIL PROTECTED]> wrote:
>>
>> Bonjour,
>>
>> j'importe des données au format csv via rake db:migrate. jusque là
>> tout allait bien... Maintenant j'ai ajouté un
>> "validates_uniqueness_of" sur un des champs et j'ai apparemment
>> quelques doublons dans ma liste, ce qui fait que mon importation
>> bloque à chaque fois qu'elle en rencontre un.
>> Je sais que c'est mal... d'avoir des doublons dans une liste, mais
>> j'aimerais en profiter pour apprendre un peu de ROR! En fait j'ai
>> tenté de faire afficher la valeur en double au moment du blocage avec
>> une option du validate:
>> Mais je ne sais pas accéder à la variable qui est importée:
>>
>> validates_uniqueness_of :cnpj,
>> :message => "le cnpj:#{ici je ne sais pas
>> quoi mettre } est deja utilise"
>>
>>
>> est-ce possible ???
>>
>> Le mieux serait de pouvoir effectuer un traitement particulier
>> pendant
>> la procédure d'importation.
>>
>> Un autre question sur les migration... comment appeler le self.down ?
>> toujours dans migrate (pour éviter d'aller à chaque fois que je fais
>> un test effacer la table dans ma base).
>>
>
> le self.down est appelé quand tu fais un revert de version par rake
> db:migrate. Tu peux l'appeler avec TaMigration.down que tu peux mettre
> dans un rescue si tu veux mais ca plantera si c'est pas complet. Donc
> useless.
>
>
> --
> 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]
-~----------~----~----~----~------~----~------~--~---