With your form.save() call try passing commit=True so it looks like
form.save(commit=True)

On Tue., 4 Jun. 2019, 1:39 am Ankhi Roy, <[email protected]> wrote:

> Hi,
>
> I am using Django admin - 2.2.1 and Postgresql as my database. So my
> problem is I have saved the user entered data in form.py on "POST" Request
> but it isn't saving in the postgresql database.
>
> Model.py -
>
> class modelForm(models.Model):
>     CHOICES = [('Y', 'Yes'),
>                ('N', 'No')]
>     allow = models.CharField( max_length = 4 , choices = CHOICES)
>
>     description = models.CharField( max_length=1000)
>
>     usingtheproduct = models.CharField( max_length = 4 , choices = CHOICES)
>
>
>  Forms.py file -
>
>
>
> class productForm(forms.ModelForm):
>     class Meta:
>         model = modelForm
>
>         fields = ["allow", "description", "usingtheproduct"]
>
>         labels = {
>             "allow": "Allow",
>             "description": "Description",
>             "usingtheproduct": "Using The Product"
>         }
>
>
> first.html file -
>
>  <form name = "form" action = "." method = "POST" >{% csrf_token %}
>             {{form}}
>          <input type = "submit", value = "submit">
>     </form>
>
>
> Views.py -
>
>
>
> def first(request):
>     template = loader.get_template('xyz/first.html')
>     form = productForm(request.POST or None) #
> https://stackoverflow.com/questions/35748734/django-local-variable-form-referenced-before-assignment
>
>     if request.method == 'POST':
>
>         form = productForm(data = request.POST)
>
>         if form.is_valid():
>
>             allow = request.POST.get('Allow', '')
>             decription = request.POST.get('Decription', '')
>              usingtheproduct= request.POST.get('Using The Product', '')
>             form.save() # This did not work as did not store user enetered
> data in postgresql database.
>             return HttpResponse("It is getting saved!!!!") # I can see
> this message in browser after submitting the html form,
>         else:
>             print(form.errors)
>
>     return HttpResponse(template.render({'form': form}, request))
>
>
>
>
> setting.py file -
>
> DATABASES = {
>     'default': {
>         'ENGINE': 'django.db.backends.postgresql_psycopg2',
>         'NAME': 'abc',
>         'USER' : 'xyz',
>         'PASSWORD' : '*********',
>         'HOST': 'localhost',
>         'PORT':'',
>
>     } # I have also created a database and a table with model name and
> have the exact columns as that of form input variables that is I have 3
> column as allow, description, usingtheproduct in the postgresql database.
> }
>
>
> So not sure why the data is not getting saved in the postgresdatabase, am
> i missing something? Thanks for your time.
>
> Thanks
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at https://groups.google.com/group/django-users.
> To view this discussion on the web visit
> https://groups.google.com/d/msgid/django-users/9334a917-1539-4bfc-96f2-c2f617f2ff9d%40googlegroups.com
> <https://groups.google.com/d/msgid/django-users/9334a917-1539-4bfc-96f2-c2f617f2ff9d%40googlegroups.com?utm_medium=email&utm_source=footer>
> .
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/CAAOisOJqMXB8B1h2P2xhDPnzD43AkVwT617dA_zybSpimZfL2A%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to