title: Formset saving empty entry
body: <p>So, i'm trying to save formsets but having a hard time figuring the best method! </p>
  
  <p>So far, what i tried below worked, BUT it keeps saving an empty record! </p>
  
  <p>If i delete it, it's added again next time i fill the form and submit. The data is being saved correctly (i checked admin and database), but that empty record keeps being added, it's like it automatically <strong>once</strong> generates an <strong>empty</strong> entry...i suppose it might be something wrong with the <em>for</em>, but from what i've looked up around Google, what i'm trying doesen't seem to differ much from examples i was trying to follow. 
  Also sometimes it gets an error with duplicate cpf key, though the entries are unique and despite the error, still saved to db.</p>
  
  <p>What is the best way to deal with saving formsets? I'm searching all over, i've read django formset documentation and tried different methods, but this is the only one that worked so far! </p>
  
  <p>And i have other 4 formsets which are related to user through one-to-one.</p>
  
  <p>I was using normal forms and it was working all fine, then i had to change to formset and got all lost haha! </p>
  
  <p>Any insights are appreciated!</p>
  
  <p>edit: i just realized it is jumping 2 id's when saving to db, like 1 - 3 - 5...i suppose it is indeed duplicating but saving one entry only? </p>
  
  <p>views.py</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false">
  <div class="snippet-code">
  <pre class="snippet-code-html lang-html prettyprint-override"><code>UserFormSet = formset_factory(UserForm)
  
   if request.method == 'POST':
    formset = UserFormSet(request.POST)
  
    if formset.is_valid():
     for form in formset:
      if form.is_valid():
       form.save()</code></pre>
  </div>
  </div>
  </p>
  
  <p>forms.py</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false">
  <div class="snippet-code">
  <pre class="snippet-code-html lang-html prettyprint-override"><code>class UserForm(forms.ModelForm):
  
   name = forms.CharField(
    label="Nome completo",
    required = True,
   )
   bdate = forms.CharField(
    label="Data de nascimento",
    required = True,
   )
   gender = forms.ChoiceField (
    label="Sexo",
    required = True, 
    choices = gender_choice,
   )
   cpf = forms.CharField(
    label="CPF",
    required=True,
    max_length=14,
   )
   oab = forms.CharField(
    label="OAB",
    required=True,
   )
   phone = forms.CharField(
    label="Telefone",
    required=True,
   )
  
   email = forms.EmailField(
    label="E-mail",
    required=True, 
    widget = forms.TextInput()
   )
  
   class Meta:
     model = User</code></pre>
  </div>
  </div>
  </p>
  
  <p>models.py</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false">
  <div class="snippet-code">
  <pre class="snippet-code-html lang-html prettyprint-override"><code>class User(models.Model):
   name = models.CharField(max_length=100, verbose_name='Nome Completo')
   bdate = models.CharField(max_length=10, verbose_name='Data de Nasc.')
   gender = models.CharField(max_length=15, verbose_name='Sexo')
   cpf = models.CharField(max_length=14, unique=True, verbose_name='CPF')
   oab = models.CharField(max_length=15, unique=True, verbose_name='OAB')
   phone = models.CharField(max_length=15, verbose_name='Celular')
   email = models.EmailField(max_length=50, verbose_name='E-mail')
  
   def __unicode__(self):
    return self.name
  
   class Meta:
    verbose_name = u'Identificação'
    verbose_name_plural = u'Identificação'</code></pre>
  </div>
  </div>
  </p>
  
  <p>curriculo.html</p>
  
  <p><div class="snippet" data-lang="js" data-hide="false">
  <div class="snippet-code">
  <pre class="snippet-code-html lang-html prettyprint-override"><code>&lt;form ...&gt;
  
  &lt;h3&gt;Dados de Identificação&lt;/h3&gt;
      {{ UserFormSet.management_form }}
      {% for form in UserFormSet %}
          &lt;label&gt;Nome completo:&lt;/label&gt;
          {{ form.name }}
          &lt;label&gt;Data de nascimento:&lt;/label&gt;
          {{ form.bdate }}
          &lt;label&gt;Sexo:&lt;/label&gt;
          {{ form.gender }}
          &lt;label&gt;CPF:&lt;/label&gt;
          {{ form.cpf }}
          &lt;label&gt;OAB:&lt;/label&gt;
          {{ form.oab }}
          &lt;label&gt;Telefone:&lt;/label&gt;
          {{ form.phone }}
          &lt;label&gt;E-mail:&lt;/label&gt;
          {{ form.email }}
      {% endfor %}
    
   &lt;/form&gt;</code></pre>
  </div>
  </div>
  </p>