On Tue, Mar 24, 2009 at 6:10 PM, Theme Park Photo, LLC <swir...@gmail.com>wrote:
> > Actually, no. The docs have this example which will fail > > # Create a form to edit an existing Article. > >>> a = Article.objects.get(pk=1) > >>> f = ArticleForm(instance=a) > >>> f.save() > > > > On Mar 24, 12:34 pm, David Zhou <da...@nodnod.net> wrote: > > It builds up on the things mentioned in the documentation for normal > > forms. Also, the documentation for ModelForm's save instance has > > pretty explicit examples of creating form instances: > > > > http://docs.djangoproject.com/en/dev/topics/forms/modelforms/#the-sav... > > > > -- dz > > > > On Tue, Mar 24, 2009 at 3:21 PM, Theme Park Photo, LLC > > > > <swir...@gmail.com> wrote: > > > > > Error fields were all empty. I checked methods non_field_errors and > > > _get_errors; _errors was None. > > > > > But Alex Gaynor was right! When I added the form "POST" data in, the > > > form validated. I assumed that creating a ModelForm from an existing > > > instance would give it valid data, but that's not the case. (Though > > > the Django Documentation doesn't say this: > > >http://docs.djangoproject.com/en/dev/topics/forms/modelforms/) > > > > > On Mar 24, 12:15 pm, David Zhou <da...@nodnod.net> wrote: > > >> If it's not valid, then something likely threw a validation error. > > >> What does the error say? > > > > >> -- dz > > > > >> On Tue, Mar 24, 2009 at 3:11 PM, Theme Park Photo, LLC > > > > >> <swir...@gmail.com> wrote: > > > > >> > It has data! It was created from an existing instance...and all the > > >> > fields have values > > > > >> > 'body': u'<p>hello there</p>', 'allow_comments': > > >> > 1, 'author': 10L, 'tease': u'<p>hello there</ > > >> > p>', > > >> > 'publish': datetime.datetime(2009, 3, 23, 15, > > >> > 3, > > >> > 36), 'score': -93L, 'categories': [1L], > > >> > 'title': > > >> > u'Hello', 'slug': u'hello-0', 'tags': > > >> > u'hello'} > > > > >> > On Mar 24, 12:06 pm, Alex Gaynor <alex.gay...@gmail.com> wrote: > > >> >> On Tue, Mar 24, 2009 at 3:02 PM, Theme Park Photo, LLC < > swir...@gmail.com>wrote: > > > > >> >> > Im trying to get code to edit an existing record in a table > working. > > >> >> > For some reason, form.is_valid is returning false (and I can't > save it > > >> >> > because there's no cleaned data). Even reduced to this (below) > where > > >> >> > I'm simply getting an existing "Post" object, creating a > ModelForm, > > >> >> > and validating it, fails! > > > > >> >> > Any suggestions? > > > > >> >> > post = Post.objects.get(id=postId) > > >> >> > form = PostForm(instance=post) > > >> >> > if form.is_valid(): # All validation rules pass > > >> >> > form.save() > > >> >> > else: > > >> >> > # at this point, non_field_errors and _get_errors > > >> >> > return null. _errors is defined as none(), yet form.is_valid > > >> >> > # is returning false > > > > >> >> A form without data is never considered valid. You probably want > your > > >> >> workflow to be more like: > > > > >> >> obj = Model.objects.get() > > >> >> if request.method == 'POST': > > >> >> form = Form(request.POST, isntance=obj) > > >> >> if form.is_valid(): > > >> >> form.save() > > >> >> else: > > >> >> form = Form(instance=obj) > > >> >> return render_to_response() > > > > >> >> -- > > >> >> "I disapprove of what you say, but I will defend to the death your > right to > > >> >> say it." --Voltaire > > >> >> "The people's good is the highest law."--Cicero > > > Please file a ticket about that. Alex -- "I disapprove of what you say, but I will defend to the death your right to say it." --Voltaire "The people's good is the highest law."--Cicero --~--~---------~--~----~------------~-------~--~----~ 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 django-users+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/django-users?hl=en -~----------~----~----~----~------~----~------~--~---