Le 6 juin 2008 09:26, Cyril Mougel a écrit :
> On Fri, Jun 6, 2008 at 1:54 AM, Thomas wrote:

>> Je voudrais obliger la validation de l'attachment (le fichier) en
>> creation (new document) et ne pas l'obliger en edition (edit
>> document).
>>
>> Comment faire?
>
> Ce qu'il faut c'est remplacer la methode :
>
>      def validates_as_attachment
>        validates_presence_of :size, :content_type, :filename
>        validate :attachment_attributes_valid?
>      end
>
> que tu dois utiliser pour valider et mettre à la main ces validations
> et ajouter des :if dedans. Tu créera ensuite une methode qui update
> sans validation qui rempli la condition du if.

Ce n'est pas plus simple d'écrire :

validates_presence_of :size, :content_type, :filename, :on => :create
validate_on_create :attachment_attributes_valid?

que d'utiliser :if

> Enfin dans ton edit ou new tu appeles la methode qui valid ou pas.

C'est généralement dans les actions create et update, non ?

> Il faut toujours déporter la logique dans le model. Le model ne peux pas
> savoir si c'est edit ou new qui l'appele.

   -- Jean-François.

--
http://twitter.com/underflow_

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