Opened 10 years ago

Last modified 9 years ago

#23387 closed Bug

Error when saving inline formsets as new after a validation error. — at Version 2

Reported by: John R. Tipton Owned by: nobody
Component: contrib.admin Version: dev
Severity: Normal Keywords: admin formset validation base10
Cc: karnatijayadeep@… Triage Stage: Ready for checkin
Has patch: yes Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: yes UI/UX: no

Description (last modified by John R. Tipton)

This bug seems to have been around for a long time, as I've tried this from version 1.4 up.

While in the admin, if you have a form with inline formsets and you try to do a save as new, it works properly, unless there is a validation error. If you get a validation error, Django sends you through the add_view which no longer has the "Save as new" option. If you click save here, you will get the error below:

ValueError at /admin/drawings/sow/add/
invalid literal for int() with base 10:
Request Method: POST
Request URL: http://127.0.0.1:8000/admin/drawings/sow/add/
Django Version: 1.6.6.dev20140829183230
Exception Type: ValueError
Exception Value:
invalid literal for int() with base 10:

Exception Location: /Users/tip/Dropbox/websites/isotekrms/django/db/models/fields/init.py in get_prep_value, line 613
Python Executable: /System/Library/Frameworks/Python.framework/Versions/2.7/Resources/Python.app/Contents/MacOS/Python
Python Version: 2.7.6

I, have written a small patch that will check to see if the formset had validation errors and it was submitted as a save as new, it will set the context variable change=True which causes the "Save as new" button to show on the form again. Fixing the validation errors on the screen and pressing "Save as new" again will save the form properly.

Change History (4)

by John R. Tipton, 10 years ago

Patch

comment:1 by John R. Tipton, 10 years ago

Easy pickings: set

by John R. Tipton, 10 years ago

Updated Patch.

comment:2 by John R. Tipton, 10 years ago

Description: modified (diff)
Note: See TracTickets for help on using tickets.
Back to Top