Hi Nicolas Riggs Nicolas,
The issue is most likely coming from the hidden fields (student and course) being required but not rendered with values, causing silent validation failures.
Because the fields are hidden, Django will still validate them — and if they are missing, blank, or altered, the formset will fail validation. The problem is that errors on hidden fields do not show up in your UI, so it looks like the form is submitting with no error while in reality formset.is_valid() is returning False every time.
Could you please share your model class Performance , To check the model class field & attributes