Only "problem" is that if there are 0 forms, then the clean method doesn't seem to get called at all, so I don't know how to check if there are 0. Really...this should never happen though (except that my JS has a bug in it, allowing you to remove all the forms).

When you say "at least make one form required", I assume you mean "make only one extra form required, regardless of how many have been added via javascript".

You will need to have hidden input on your page which contains the number of forms that have been added via javascript, and then use that number, minus 1, as the value to pass in as the extra attribute to your formsets constructor.

Not quite... ignoring the JavaScript for now, one and only one form is displayed (extra=1, no initial data). That one form is not required -- I want it to be. Any forms added via JS should not be required, ever.
–
MarkMar 9 '10 at 4:34