After fiddling around I think I found the syntax that seems to work
for my purposes:
if formset.is_valid():
for form in formset.forms:
tmpform = form.save(commit=False)
for field in form:
if not field.form.is_bound:
data = field.form.initial.get(
field.name,
field.field.initial)
if callable(data):
data = data()
else:
data = field.data
setattr(tmpform,
field.name, data)
print "fieldname: %s - value: %s" %(
field.name,data)
tmpform.save()
The reason I just didn't do:
if formset.is_valid():
formset.save()
is because I wanted to see what the POST was giving me. And it turns
out that I should have included all the hidden fields in my manually
created form in my template. So I had to include this in my template
too to get all the POST data necessary to change the data in my model:
{% for hid in form.hidden_fields %}
{{hid}}
{% endfor %}