TechAE Blogs - Explore now for new leading-edge technologies

TechAE Blogs - a global platform designed to promote the latest technologies like artificial intelligence, big data analytics, and blockchain.

Full width home advertisement

Post Page Advertisement [Top]

Django Forms

How To Create Django Forms Using Class Based Views


Let’s see the example of Python Django class-based forms. In this tutorial, you’ll learn how to create forms using Django, We will be using the Class-Based Views Functions as every form is expected to follow the POST method, if the submitted form is valid then the data would save in the database. This is the most powerful technique to create Django forms. So let's start with this awesome

For Django setup, you can also follow this blog.

Django Project Setup

Make a folder and open cmd from that folder. Use the following commands step by step

1. To create isolated python environments

python -m venv venv

2. To activate the virtual environment


3. Enter the Django command after you've established and activated a virtual environment

pip install django

4. To make a project directory

django-admin startproject projectname

5. Go to the project directory

cd projectname

6. Create the Django app

python startapp appname

7. Open the project

code .

8. Migrate and create Django user

python migrate
python createsuperuser

9. Start the Django server

python runserver

10. Check admin on this URL

11. Register your app in projectname/



    ... # Leave all the other INSTALLED_APPS


Django class-based forms

1. Create a model in appname/

class Data(models.Model):

    name = models.CharField(max_length=60)

    body = models.CharField(max_length=200)


    def __str__(self):


2. Migrate model on Admin

python migrate
python makemigrations

3. Register database model on appname/

from .models import Data

4. Making appname/ You can see here that we've imported forms and models. I'm going to use class meta to generate all the fields from the database. So here, I define the fields that I want to use.

from django import forms

from .models import Data

class DataForm(forms.ModelForm):

   class Meta:

     model = Data ## Database Model name 

     fields = ('name', 'body')

5. Register in appname/ Here we're going to just validate the form and then perform an action. We're going to save the data if the submitted data is valid.

from django.shortcuts import render from appname.forms import DataForm def form_detail(request): if request.method == 'POST': form = DataForm(request.POST) if form.is_valid(): form = DataForm() return render(request,'contact.html', {'form' : form})

6. In App folder make the templates folder and create the file name appname/templates/contact.html

<form method="post">{% csrf_token %} {{ form.as_p }} <input type="submit" value="Send message"> </form>

7. Adding path to appname/

from django.urls import path from appname import views urlpatterns = [ path('', views.form_detail, name="form") ]

8. Include your app name in the projectname/

from django.urls import include

path( '' , include( 'appname.urls'))

9. Restart the server

python runserver

Thank you for reading!

So we found a clear method to create forms using class-based Django. I hope everything is clear and helpful for you. Feel free to comment if you have any queries.

If you found this article useful, stay tuned for more articles on Django.


No comments:

Post a Comment

Thank you for submitting your comment! We appreciate your feedback and will review it as soon as possible. Please note that all comments are moderated and may take some time to appear on the site. We ask that you please keep your comments respectful and refrain from using offensive language or making personal attacks. Thank you for contributing to the conversation!

Bottom Ad [Post Page]