That worked !   I like that solution much better too!

Thanks for your help.

Rob


On Feb 14, 2:14 pm, Malcolm Tredinnick <[EMAIL PROTECTED]>
wrote:
> On Thu, 2008-02-14 at 10:54 -0800, robstar wrote:
> > Thanks Malcolm, I'll try it out.
>
> > Some of this feels kind of hack'ey .... what's the correct, clean way
> > to do this kind of processing with newforms??
>
> Putting an error against two fields simultaneously isn't a very normal
> practice. You're doing something that the class isn't really designed
> for, so you're going to have to work with the internals. No way around
> that. Normally, errors go against a single field (via a clean_FOO()
> method) or against the form as a whole (via Form.clean()).
>
> Still, it's not impossible to directly modify self._errors directly. You
> have access to it.
>
> In your case, I'd probably structure things a bit differently.
>
> For example, presumably "imghash" is a hidden field. So validate that
> early in the form, then put in a clean_captcha() mtehod to validate the
> captcha field. Once a field is validated correctly, it will be in
> self.cleaned_data for later fields to access, so clean_captcha() can
> work with self.cleaned_data['imghash'] (testing if it exists first). I
> don't see why you have to do the captcha validation in the clean()
> method for the form.
>
> Similarly, you could consider either putting the "passwords do not
> match" error against the form itself (so it will appear at the top), or
> writing a clean_password2() method that puts the error against
> "password2". After all, an error that says "this password field doesn't
> match that one" is going to be pretty clear to the user. Password fields
> like this are the one case where I've personally dived into self._errors
> in the clean() method, because I wanted to highlight both fields in the
> error style when the form was printed out (I was doing some custom
> presentation stuff to make that happen). Just accept that it's a
> slightly unusual case and use the structure you've got available (i.e.
> modify self._errors if you like).
>
> Malcolm
>
> --
> The cost of feathers has risen; even down is 
> up!http://www.pointy-stick.com/blog/
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to