Django Study Cards

Enhance Your Understanding with Django Programming Concept Cards for quick learning



Django

A high-level Python web framework that enables rapid development of secure and scalable web applications.

Model

A Python class that represents a database table, allowing you to define the structure and behavior of your data.

View

A Python function or class that handles HTTP requests and returns HTTP responses, typically rendering templates.

Template

A text file containing HTML with embedded Django template language, used to generate dynamic web pages.

Form

A Django class that represents an HTML form, providing validation and handling of user-submitted data.

URLconf

A Python module that maps URLs to views, allowing you to define the URL patterns for your web application.

Authentication

The process of verifying the identity of a user, typically through a username and password, to grant access to protected resources.

Authorization

The process of determining whether a user has permission to perform a certain action or access a specific resource.

Static Files

CSS, JavaScript, images, and other files that are served directly to the client without any processing by Django.

Media Files

User-uploaded files such as images, videos, and documents, which are stored and served by Django.

Testing

The process of verifying that your code works as expected, typically through automated tests that simulate user interactions.

Debugging

The process of identifying and fixing errors or issues in your code, often using tools like the Django Debug Toolbar.

Deployment

The process of making your web application available for public use, typically on a production server.

Scaling

The process of increasing the capacity and performance of your web application to handle a larger number of users or requests.

Best Practices

Recommended guidelines and techniques for writing clean, maintainable, and efficient Django code.

Model Field

A Django class that represents a database field, defining the type and constraints of the data stored in a model.

QuerySet

A Django object that represents a database query, allowing you to retrieve, filter, and manipulate data from a model.

Context

A dictionary-like object that stores variables and their values, making them accessible in templates.

Middleware

A component that sits between the web server and Django, performing tasks such as request/response processing and authentication.

CSRF Protection

Cross-Site Request Forgery protection, a security measure in Django that prevents unauthorized form submissions.

URL Reverse

A Django function that generates a URL based on a given view name and optional parameters.

User Model

The built-in Django model that represents a user, providing authentication and authorization functionality.

Static File Storage

A Django storage class that handles the storage and retrieval of static files, such as Amazon S3 or local file system.

Media File Storage

A Django storage class that handles the storage and retrieval of media files, such as Amazon S3 or local file system.

Unit Test

A type of test that verifies the functionality of a small, isolated piece of code, such as a function or method.

Integration Test

A type of test that verifies the interaction between multiple components or modules of your web application.

Logging

The process of recording events and messages in your application for debugging and monitoring purposes.

Continuous Integration

A development practice that involves automatically building, testing, and deploying your code whenever changes are made.

Load Balancing

The process of distributing incoming network traffic across multiple servers to improve performance and reliability.

Code Style

A set of conventions and guidelines for writing code that improves readability, maintainability, and collaboration.

Code Documentation

The process of describing your code's functionality, usage, and design through comments, docstrings, and documentation tools.

Code Versioning

The practice of tracking and managing changes to your code over time, typically using a version control system like Git.

Code Review

The process of examining and evaluating your code by peers or senior developers to ensure quality, correctness, and adherence to standards.

Performance Optimization

The process of improving the speed and efficiency of your code and web application to provide a better user experience.

Security Measures

Techniques and practices to protect your web application from common security vulnerabilities, such as SQL injection and cross-site scripting.

Error Handling

The process of gracefully handling and recovering from errors or exceptions in your code to prevent crashes or unexpected behavior.

Caching

The process of storing frequently accessed data in memory or disk to improve performance and reduce database queries.

Internationalization

The process of designing and developing your web application to support multiple languages and cultural preferences.