📖 Scenario: You are managing a website that shows product information. Instead of writing each product page by hand, you want to use a database to store product details and then create pages automatically from that data.
🎯 Goal: Build a simple example of database-driven content creation by setting up product data, configuring a filter, selecting products based on that filter, and completing the content structure for display.
📋 What You'll Learn
Create a dictionary called products with exact product names and prices
Add a variable called max_price to set a price limit
Use a dictionary comprehension called affordable_products to select products priced below max_price
Complete the content by adding a content_title string describing the filtered products
💡 Why This Matters
🌍 Real World
Websites often use databases to store product or article information and generate pages automatically based on user preferences or filters.
💼 Career
Understanding how to filter and generate content from data is essential for roles in web development, content management, and SEO optimization.
Progress0 / 4 steps
1
DATA SETUP: Create the product data dictionary
Create a dictionary called products with these exact entries: 'Laptop': 1200, 'Smartphone': 800, 'Tablet': 400, 'Headphones': 150, and 'Smartwatch': 200.
SEO Fundamentals
Hint
Use curly braces {} to create a dictionary with keys as product names and values as prices.
2
CONFIGURATION: Set the maximum price filter
Add a variable called max_price and set it to 500 to filter products by price.
SEO Fundamentals
Hint
Just assign the number 500 to the variable max_price.
3
CORE LOGIC: Select affordable products using dictionary comprehension
Create a dictionary comprehension called affordable_products that includes only products from products with prices less than max_price.
SEO Fundamentals
Hint
Use {key: value for key, value in dict.items() if condition} to filter the dictionary.
4
COMPLETION: Add a content title describing the filtered products
Add a string variable called content_title with the exact value 'Products under $500' to complete the content structure.
SEO Fundamentals
Hint
Assign the exact string to content_title to describe the filtered list.
Practice
(1/5)
1. What is the main benefit of using database-driven content on a website?
easy
A. The website does not need any templates
B. The website updates automatically when data changes
C. The website uses only static HTML pages
D. The website loads faster without any data
Solution
Step 1: Understand database-driven content
Database-driven content means the website shows data stored in a database, which can change anytime.
Step 2: Identify the benefit
Because the data is stored separately, the website updates automatically when the database changes.
Final Answer:
The website updates automatically when data changes -> Option B
Quick Check:
Database-driven content = automatic updates [OK]
Hint: Database-driven means content changes with data updates [OK]
Common Mistakes:
Thinking database-driven means static pages
Believing templates are not needed
Confusing speed with data updates
2. Which of the following is a correct step in creating database-driven content?
easy
A. Use only images without text content
B. Write static HTML without connecting to a database
C. Connect to the database and query data
D. Avoid using templates for displaying data
Solution
Step 1: Identify the process of database-driven content
It requires connecting to a database and getting data using queries.
Step 2: Check the options
Only Connect to the database and query data mentions connecting and querying the database, which is essential.
Final Answer:
Connect to the database and query data -> Option C
Quick Check:
Database connection + query = correct step [OK]
Hint: Database-driven means connect and query data [OK]
Common Mistakes:
Choosing static HTML only
Ignoring database connection
Skipping templates for data display
3. Consider a website that uses a database to store blog posts. If the database has 3 posts, what will happen when a new post is added to the database?
medium
A. The website will automatically show 4 posts without code changes
B. The website will crash because of the new post
C. The website will show 3 posts only until manually updated
D. The website will delete old posts to add the new one
Solution
Step 1: Understand dynamic content from database
The website fetches posts from the database each time it loads, so it reflects current data.
Step 2: Predict behavior after adding a new post
Adding a new post updates the database, so the website shows all posts including the new one automatically.
Final Answer:
The website will automatically show 4 posts without code changes -> Option A
Quick Check:
Database update = website content update [OK]
Hint: New data in DB shows automatically on site [OK]
Common Mistakes:
Thinking manual update is needed
Assuming website crashes with new data
Believing old posts get deleted automatically
4. A developer wrote code to fetch product data from a database but the website shows no products. What is a likely error?
medium
A. The website uses static HTML pages only
B. The website uses too many images
C. The database has no tables
D. The database connection string is incorrect
Solution
Step 1: Analyze why no products show
If the website connects to the database but shows no data, connection issues are common causes.
Step 2: Check options for likely errors
An incorrect connection string stops data retrieval, so The database connection string is incorrect is the most likely cause.
Final Answer:
The database connection string is incorrect -> Option D
Quick Check:
Wrong connection string = no data shown [OK]
Hint: Check database connection string first [OK]
Common Mistakes:
Ignoring connection errors
Assuming static pages cause no data
Blaming images for data issues
5. You want to create a dynamic product catalog page that shows only products with stock greater than zero. Which approach best achieves this using database-driven content?
hard
A. Query only products with stock > 0 directly from the database
B. Query all products and filter stock > 0 in the template code
C. Show all products and mark out-of-stock ones as unavailable
D. Use static HTML pages for each product
Solution
Step 1: Understand filtering in database-driven content
Filtering data at the database level reduces data sent and improves performance.
Step 2: Compare options for filtering stock
Query only products with stock > 0 directly from the database queries only products with stock > 0, which is efficient and accurate.
Final Answer:
Query only products with stock > 0 directly from the database -> Option A
Quick Check:
Filter in DB query = best practice [OK]
Hint: Filter data in DB query, not in templates [OK]
Common Mistakes:
Filtering data only in templates
Showing all products regardless of stock
Using static pages for dynamic data
Recommended
Ready to prove it?
Pass the test and this pattern moves unknownstrongwhile earning +1 Grip toward your certificate.