title: Django ModelForm not saving data
body: <p>I've tried solutions from the following posts: </p>
  
  <p><a href="https://stackoverflow.com/questions/13046488/saving-data-from-modelform">Saving data from ModelForm</a> : Didn't work</p>
  
  <p><a href="https://stackoverflow.com/questions/12164680/modelform-data-not-saving-django">ModelForm data not saving django</a> : Didn't work. </p>
  
  <p>I'm trying to save data from a ModelForm into the model. </p>
  
  <p>models.py:</p>
  
  <pre><code>class Testimonials(models.Model):
      name = models.CharField(max_length=128)
      credentials = models.CharField(max_length=128)
      test = models.CharField(max_length=2000)
      id = models.AutoField(primary_key=True)
      NO = 'NO'
      YES = 'YES'
      APPROVAL = ((NO, 'no'), (YES, 'yes'))
      verified = models.CharField(choices=APPROVAL, default=NO, max_length=3) #Field for making sure only verified testimonials are displayed
  
      def __unicode__(self):
          return self.id
  </code></pre>
  
  <p>forms.py:</p>
  
  <pre><code>class TestimonialForm(forms.ModelForm):
      name = forms.CharField(widget=forms.TextInput(attrs={'class': 'form-control input-area', 'placeholder': 'Enter your name'}), required=True)
      credentials = forms.CharField(widget=forms.TextInput(attrs={'class': 'form-control input-area', 'placeholder': 'Enter your designation'}), required=True)
      test = forms.CharField(widget=forms.Textarea(attrs={'class': 'form-control test-form-area', 'placeholder': 'Testimonial', 'rows': '5'}), required=True)
      verified = forms.ChoiceField(widget=forms.HiddenInput())
  
      class Meta:
          model = Testimonials  
  </code></pre>
  
  <p>views.py</p>
  
  <pre><code>def add_testimonial(request):
      context = RequestContext(request)
      if request.method == 'POST':
          form = TestimonialForm(request.POST)
  
          if form.is_valid():
              form.save(commit=True)
              return HttpResponseRedirect('/testimonials/thanks/')
          else:
              print form.errors
  
      else:
          form = TestimonialForm()
  
      return render_to_response('templates/add_testimonial.html', {'form': form}, context)
  </code></pre>
  
  <p>Template:</p>
  
  <pre><code>&lt;form id="testimonial_form" method="POST" action="/testimonials/thanks/"&gt;
      {% csrf_token %}
      {% for hidden in form.hidden_fields %}
          {{ hidden }}
      {% endfor %}
      {% for field in form.visible_fields %}
          {{ field.help_text}}
          {{ field }}
      {% endfor %}
      &lt;input type="submit" name="submit" value="Add testimonial" class="btn btn-info test-button"/&gt;
  &lt;/form&gt;
  </code></pre>
  
  <p>EDIT:</p>
  
  <p>urls.py</p>
  
  <pre><code>url(r'^testimonials/all/', views.testimonials, name='testimonial'),
  url(r'^testimonials/thanks/', views.testimonials_thanks, name='testimonial_thanks'),
  url(r'^add_testimonial', views.add_testimonial, name='add_testimonial'),
  </code></pre>
  
  <p>However, on redirect, it doesn't save the form into the model which I'm checking from both PHPMyAdmin (using a MySQLdb) and the Django Admin panel. Any idea why? </p>