- Python for Web Development
-
Overview
- Introduction to Flask and Django
- Setting Up a Flask Application
- Django Models and Migrations
- Routing and URL Handling in Django and Flask
- Forms and User Authentication in Django and Flask
- REST API Development with Flask & Django
- Working with Databases (SQLite, PostgreSQL, MySQL)
- Template Engines (Jinja2 for Flask, Django Templates)
- Deployment of Flask & Django Applications on AWS, GCP, and Heroku
- Security Best Practices for Web Apps
Setting Up a Flask Application
Flask is a lightweight and flexible web framework for Python that makes building web applications simple and efficient. In this tutorial, we will go through the step-by-step process of setting up a Flask application from scratch.
1. Installing Flask
Before starting, ensure that Python is installed on your system. You can check this by running:
python --version
or
python3 --version
Now, install Flask using pip
:
pip install Flask
2. Creating a Basic Flask App
Once Flask is installed, create a new directory for your project and navigate into it:
mkdir flask_app
cd flask_app
Inside this directory, create a Python file (e.g., app.py
) and add the following code:
from flask import Flask
app = Flask(__name__)
@app.route('/')
def home():
return "Welcome to Your First Flask App!"
if __name__ == '__main__':
app.run(debug=True)
Explanation:
- We import the
Flask
class. - We create an instance of the Flask application.
- The
@app.route('/')
decorator defines a route for the homepage. - The
home()
function returns a simple message. app.run(debug=True)
runs the application in debug mode.
3. Running the Flask Application
To start your Flask app, run:
python app.py
or
python3 app.py
You will see output similar to:
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
Now, open your browser and visit http://127.0.0.1:5000/
. You should see "Welcome to Your First Flask App!" displayed on the page.
4. Project Structure
As your Flask project grows, organizing your files becomes crucial. A common structure is:
flask_app/
│── app.py
│── templates/
│ ├── index.html
│── static/
│ ├── style.css
│── requirements.txt
templates/
→ Stores HTML files.static/
→ Stores CSS, JS, images, etc.requirements.txt
→ Lists dependencies (pip freeze > requirements.txt
).
5. Creating a Simple HTML Template
Flask supports Jinja2 templating. Let's create a templates
folder and an index.html
file inside it:
<!DOCTYPE html>
<html>
<head>
<title>My Flask App</title>
</head>
<body>
<h1>Welcome to Flask!</h1>
</body>
</html>
Modify app.py
to render this HTML:
from flask import Flask, render_template
app = Flask(__name__)
@app.route('/')
def home():
return render_template('index.html')
if __name__ == '__main__':
app.run(debug=True)
Now, reload http://127.0.0.1:5000/
, and you’ll see your HTML page!
6. Running Flask with a Virtual Environment (Optional)
To keep your project dependencies organized, you can use a virtual environment:
python -m venv venv
source venv/bin/activate # On macOS/Linux
venv\Scripts\activate # On Windows
pip install Flask
This ensures Flask is installed only for this project.
Conclusion
You have successfully set up a basic Flask application! In the next tutorials, we will explore routing, handling user inputs, working with databases, and more. Stay tuned!
Prepare for Interview
- Debugging in Python
- Multithreading and Multiprocessing in Python
- Context Managers in Python
- Decorators in Python
- Generators in Python
- Requests in Python
- Django
- Flask
- Matplotlib/Seaborn
- Pandas
- NumPy
- Modules and Packages in Python
- File Handling in Python
- Error Handling and Exceptions in Python
- Indexing and Performance Optimization in SQL
Random Blogs
- Why to learn Digital Marketing?
- Python Challenging Programming Exercises Part 2
- How to Become a Good Data Scientist ?
- Exploratory Data Analysis On Iris Dataset
- Big Data: The Future of Data-Driven Decision Making
- Extract RGB Color From a Image Using CV2
- Datasets for analyze in Tableau
- Government Datasets from 50 Countries for Machine Learning Training
- How to Start Your Career as a DevOps Engineer
- The Ultimate Guide to Machine Learning (ML) for Beginners
- Python Challenging Programming Exercises Part 3
- Google’s Core Update in May 2020: What You Need to Know
- Downlaod Youtube Video in Any Format Using Python Pytube Library
- SQL Joins Explained: A Complete Guide with Examples
- OLTP vs. OLAP Databases: Advanced Insights and Query Optimization Techniques
Datasets for Machine Learning
- Ozone Level Detection Dataset
- Bank Transaction Fraud Detection
- YouTube Trending Video Dataset (updated daily)
- Covid-19 Case Surveillance Public Use Dataset
- US Election 2020
- Forest Fires Dataset
- Mobile Robots Dataset
- Safety Helmet Detection
- All Space Missions from 1957
- OSIC Pulmonary Fibrosis Progression Dataset
- Wine Quality Dataset
- Google Audio Dataset
- Iris flower dataset
- Artificial Characters Dataset
- Bitcoin Heist Ransomware Address Dataset