Hello,

I wonder if there's a bug when saving foreign keys through a
manipulator. Check the following lines:

# convert the request data into the appropriate Python types for those
fields
manipulator.do_html2python(new_data)
# save the new object
manipulator.save(new_data)

do_html2python calls FormField.convert_post_data(new_data), which in
turn uses FormField.get_member_name() to access the name of each field.
On the other hand, save gets the value of each field by calling
Field.get_manipulator_new_data, which looks up the value by Field.name,
not attrname. Now, field.name and field.attrname are equal, except for
foreign keys where an '_id' is appended to the attrname. So what
happens for foreign keys is that do_html2python() accesses and converts
the field 'myFK_id' in new_data while save() looks up the 'myFK', which
is not there.

Has anyone else come across this ? I am using the magic-removal branch,
if it makes any difference.

Thanks,
George


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

Reply via email to