I also just realized that the reason clean() wouldn't work when I tried to pass it the request as an argument is simply because this required me to call clean() by itself and thus the errors raised within it aren't properly inherited (and thus reflected when the form is reloaded) when clean() is called outside of is_valid()
On Jan 11, 9:24 pm, "[EMAIL PROTECTED]" <[EMAIL PROTECTED]> wrote: > Thanks Karen, > > I did initially want to raise it in the clean method but what I'm > trying to do this is validate that cookies are enabled thus requiring > access to the request object. I first tried to pass it to clean which > really doesn't seem like a clean way to do it - no pun intended - > anyway, since usually I would just want clean() to be called when I > called form.is_valid() and I cannot pass any arguments that way, but > in any case that didn't really work out (def clean(self,request) would > complain about the number of arguments being too many - 3 instead of 2 > - when I attempted to pass in the request object) Granted, I didn't > try this for as long as the other method. > > If you have suggestions for how to pass arguments to clean() in a > better way that would be another workaround for this issue. Basically > I wanted to raise cookie errors from within the form handling so I > didnt have to redirect to another page or implement some custom thing > in the template. (I am however open to doing this if it is the better > solution, I'm just not sure what best practice here would be). > > On Jan 11, 8:21 pm, "Karen Tracey" <[EMAIL PROTECTED]> wrote: > > > On Jan 11, 2008 10:49 PM, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote: > > > > I want to manually insert an error into a form from the view using > > > f.errors (where f is the form in question). For a specific field this > > > is easy (f.errors['fieldname'] = u'my error here') but I can't seem to > > > figure out how to make non field errors work. Is there a special > > > dictionary entry for non field errors, or some other way to do this. I > > > had a look at the django code but didn't get much further here. Any > > > suggestions are appreciated. > > > Take a look at the doc for the Form subclass's clean() method here: > > >http://www.djangoproject.com/documentation/newforms/#custom-form-and-... > > > It would be cleaner to raise the error in a clean() method, but I think the > > doc includes the information you need to manipulate it yourself if you > > really want to. (Note you can also customize the error messages for fields, > > which could get around having to manipulate f.errors['fieldname'] directly, > > see:http://www.djangoproject.com/documentation/newforms/#error-messages.) > > > Karen --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Django users" group. To post to this group, send email to django-users@googlegroups.com 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 -~----------~----~----~----~------~----~------~--~---