Class Central is learner-supported. When you buy through links on our site, we may earn an affiliate commission.


Django Application Development with SQL and Databases

IBM via Coursera


Working with databases is a key skill for developers, especially those in Back-End, Full Stack, and DevOps roles. This course will teach you the fundamentals of relational databases and how to access them from your applications. Some of the essential application development tasks include accessing, processing, and presenting data. Data is stored in various databases, either on-premise or on the cloud, and developers will need to learn how to talk to them via programming languages. In this course, you’ll learn about foundational database concepts, and basics of SQL, a simple and powerful programming language used for managing data. In addition to SQL, you will discover how Object-Relational Mapping (ORM) allows you to use Object-Oriented Programming (OOP) languages like Python to work with databases. You will gain full-stack Django skills by creating a Django web app to persist, process, and present data. And you will get hands-on experience deploying your Django web app on the cloud. Throughout this course you will practice with hands-on labs. You will also complete a final project at the end of the course to demonstrate what you have learnt and have a great addition to your portfolio!


  • Getting Started with SQL & Relational Databases
    • What is data? As you start this course, you will be introduced to concepts fundamental to understanding data, databases, and database management systems. You will learn some basic SQL statements. Explore the structure, use cases, and limitations of relational databases. Learn key relational database concepts, including entities, attributes, entity-relationship data modeling, common data types, and primary key. You will learn about cloud database fundamentals and get hands-on experience creating a database instance on the cloud. At the end of the module, an optional lesson with more advanced SQL techniques will help you get the most out of your data.
  • ORM: Bridging the Gap Between the Real World and Relational Model
    • You’re aware that SQL is a powerful tool for working with databases. But in the modern application development environment, object-oriented programming is the most popular paradigm, and it is quite different from SQL. Is there a way to use Object-oriented programming to work with databases? Discover how Object-Relational Mapping (ORM) bridges the gap between object-oriented programming (OOP) and SQL and allows application developers to use OOP languages to work with databases without writing SQL code. Gain skills in using Django ORM, a popular ORM library for Python, to define models and fields so they can be mapped to database tables. Learn the steps for using Django ORM to convert your entity-relationship diagrams into Django models. Gain knowledge about using Django Model APIs to manipulate objects in databases without writing SQL queries. Explore the many useful methods Django Model provides to handle related objects.
  • Full-stack Django Development
    • It’s time to build your skills by creating a Django web app. In this module, you’ll explore the Django Model- View- Template design pattern and learn how Django models, views, and templates work together to present data on a website. You’ll look at a typical Django development process, starting with building a Django project and creating and adding an app. Gain knowledge about the Django web app structure. Learn the steps to create Django models and views, add an HTML template, map the request URLs to your views, and design and build the UI. Next, use Django’s powerful admin site functionality to manage your site content. You’ll build an admin site and create an admin user. You’ll specify the model fields on the admin site and add UI features such as Search and Filter. Create a Django view to receive an HTTP request and send an HTTP response. Discover how to combine Django views and templates to present your data as dynamic web pages.
  • Consolidate and Deploy Your Django App
    • Add to your Django skills by building a class-based view. Then, learn how to speed up development using Django’s generic-based views. Next, you’ll learn about authentication and authorization in Django. Create a User model to handle authentication and work with other models to handle authorization. Create web login, log out, and registration forms. Assign permissions to models and user groups. You’ll then move on to Bootstrap, a free and open-source web front-end framework. Learn how to quickly add Bootstrap to your Django template to build stylized and interactive web pages. Next, explore how to add static files to your apps. Learn how Django manages static files in development and deployment environments. Learn about the webserver interfaces supported by Django. And discover how Infrastructure as a Service and Platform as a Service offerings can streamline app deployment. Explore the benefits of deploying Django apps on IBM Cloud.
  • Final Project: Enhance Online Course App with New Features
    • Welcome to the culmination of your learning journey in this Django course. In this module, you will apply your new skills and knowledge to improve applications in a practice project and a peer-reviewed final project.

Taught by

Yan Luo and Rav Ahuja


1.0 rating, based on 1 Class Central review

4.5 rating at Coursera based on 208 ratings

Start your review of Django Application Development with SQL and Databases

  • Anonymous
    Confusing and the last project, a pain.
    There is no support whatsoever.
    I would not recommend this course to anybody.

Never Stop Learning.

Get personalized course recommendations, track subjects and courses with reminders, and more.

Someone learning on their laptop while sitting on the floor.