MongoDB and Python: Quick start

Up and running with mongoengine
Rating: 4.4 out of 5 (1,157 ratings)
43,869 students
MongoDB and Python: Quick start
Rating: 4.4 out of 5 (1,157 ratings)
43,869 students
Basic document design and data modeling with document databases
Working with MongoDB from Python
Use the mongoengine ODM to map classes to MongoDB


  • Basic experience with the Python programming language

Learn MongoDB with Python and mongoengine. In this short, free course, we will build an AirBnB knock-off using Python and MongoDB. You will learn enough to get up and running with MongoDB for your next project.

According the to 2017 StackOverflow developer survey, MongoDB is one of the most loved and is by far the most wanted databases of 2017. You will learn many of the skills necessary to build MongoDB backed applications. 

We will primarily focus on accessing MongoDB from the ODM mongoengine. While you can use the lower-level pymongo package, you'll see that mongoengine adds powerful additional features not natively found in MongoDB such as required fields and default values.

You will learn

  • How document databases work
  • The benefits of NoSQL databases
  • A clear set of guidelines for modeling data with document databases
  • How to map Python classes into MongoDB collections
  • The basic CRUD operations (create, read, update and delete) for MongoDB
  • Complex queries (subdocuments, hierarchies, and more)
  • How to convert hierarchies in documents into flat Python structures using list comprehensions
  • Some Python tricks
  • To use PyCharm as your IDE which writing code

The course is free and the example code is extensive and available on github. Don't wait to get started.

Who this course is for:
  • Anyone who is looking to build amazing Python-based applications based on MongoDB.
6 sections • 32 lectures • 1h 57m total length
  • Hello and welcome to the course
  • Introduction to MongoDB
  • How do document databases work?
  • Who uses MongoDB?
  • Modeling in relational databases vs. modeling with documents
  • The 5 modeling guidelines
  • Integration DBs vs application DBs
  • Getting started with the application / demo code
  • How ODMs work
  • Introduction to mongoengine
  • Demo: Registering connections with MongoEngine
  • Concept: Registering connections
  • Demo: Defining mongoengine entities (classes)
  • Concept: mongoengine entities
  • Demo: Create a new account
  • Demo: Robo 3T for viewing and managing data
  • Demo: Login
  • Demo: Register a cage
  • Demo: Add a bookable time as a host
  • Demo: Managing your snakes as a guest
  • Demo: Book a cage as a guest
  • Demo: View your bookings as guest
  • Demo: View bookings as host
  • Concept: Inserting documents
  • Concept: Queries
  • Concept: Querying subdocuments with mongoengine
  • Concept: Query using operators
  • Concept: Updating via whole documents
  • Concept: Updating via in-place operators
  • You've done it!
  • Get the code
  • MongoDB in production?

Podcaster, developer, entrepreneur, and Python enthusiast
Michael Kennedy
  • 4.4 Instructor Rating
  • 1,157 Reviews
  • 43,974 Students
  • 1 Course

Michael is the founder and host of two popular Python podcasts: Talk Python To Me and Python Bytes. Here he speaks with and explores the topics broadly interesting to Python developers.

He has been a software developer for over 20 years and has taught over 100 week-long training courses to professional software development teams throughout the world.