The essentials of application development are 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 will be introduced to some fundamental database concepts. You will learn the basics of SQL, a simple and powerful programming language for querying and managing data. And you will learn about cloud database fundamentals and get hands-on cloud database experiences.
In addition to SQL, you will discover how Object-Relational Mapping (ORM) allows you to use Object-Oriented Programming (OOP) languages 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 learn about cloud app platform fundamentals and get hands-on experience deploying your Django web app on the cloud.
Course Learning Objectives:
- Describe what is a database and how to model data
- Compose SQL queries to insert, select, update, delete data in a database
- Understand Object Relational Model (ORM)
- Employ Django to develop database-powered applications
- Deploy your Django app on the cloud
- HTML & CSS
Getting Started with SQL & Relational Databases
What is data? As you start this course, you will be introduced to some concepts that are 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.
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 two popular examples of PaaS, IBM Cloud Foundry and IBM Code Engine. Finally, gain hands-on experience deploying an app on IBM Cloud Foundry.
Final Project: Enhance Online Course App with New Features