Giới thiệu về việc cài đặt ứng dụng Flask
Trong bài viết này, chúng ta sẽ tìm hiểu cách thiết lập một ứng dụng Flask từ đầu. Flask là một framework web nhẹ cho Python, cho phép phát triển ứng dụng nhanh chóng và dễ dàng. Việc cài đặt ứng dụng Flask bao gồm việc tạo ra một instance (thể hiện) của class Flask và thiết lập các cấu hình cần thiết để ứng dụng hoạt động hiệu quả.
Cách Tạo Ứng dụng Flask
Tạo Application Factory
Một trong những phương pháp được khuyến nghị để tạo ứng dụng Flask là sử dụng một pattern gọi là application factory
. Pattern này giúp tổ chức mã nguồn của bạn một cách rõ ràng và dễ bảo trì. Thay vì sử dụng một instance Flask toàn cục, bạn sẽ tạo nó bên trong một hàm. Việc này cho phép bạn sử dụng nhiều cấu hình khác nhau một cách linh hoạt cho các môi trường khác nhau như testing, development và production.
Tạo Cấu Trúc Thư Mục
Đầu tiên, chúng ta cần tạo một thư mục mới để chứa ứng dụng Flask của mình. Hãy tạo thư mục có tên là flaskr
và file __init__.py
. File này sẽ chứa logic của application factory và cũng giúp Python nhận diện thư mục flaskr
như một package.
$ mkdir flaskr
Cấu Hình File __init__.py
Bên trong file flaskr/__init__.py
, chúng ta sẽ viết mã để tạo ứng dụng Flask:
python
import os
from flask import Flask
def create_app(test_config=None):
# Tạo và cấu hình ứng dụng
app = Flask(__name__, instance_relative_config=True)
app.config.from_mapping(
SECRET_KEY='dev',
DATABASE=os.path.join(app.instance_path, 'flaskr.sqlite'),
)
if test_config is None:
# Tải config instance nếu nó tồn tại
app.config.from_pyfile('config.py', silent=True)
else:
# Tải config test nếu được truyền vào
app.config.from_mapping(test_config)
# Đảm bảo thư mục instance tồn tại
try:
os.makedirs(app.instance_path)
except OSError:
pass
# Trang đơn giản để thử nghiệm
@app.route('/hello')
def hello():
return 'Hello, World!'
return app
Giải Thích Mã Nguồn
app = Flask(__name__, instance_relative_config=True)
tạo một instance Flask, nơi mà__name__
giúp xác định vị trí của ứng dụng.- Cấu hình mặc định bao gồm
SECRET_KEY
, giữ cho dữ liệu an toàn trong quá trình phát triển vàDATABASE
, chỉ định vị trí của file database SQLite. - Hàm
app.config.from_pyfile()
sẽ ghi đè các cấu hình mặc định với giá trị có trong fileconfig.py
nếu nó tồn tại.
Chạy Ứng Dụng Flask
Sau khi thiết lập xong, bạn có thể chạy ứng dụng bằng lệnh flask
từ terminal. Hãy nhớ rằng bạn cần ở thư mục gốc của dự án flask-tutorial
và không phải trong package flaskr
:
$ flask --app flaskr run --debug
Khi ứng dụng được khởi động thành công, bạn sẽ thấy thông báo trên terminal và có thể truy cập địa chỉ http://127.0.0.1:5000/hello để thấy trang kết quả đầu tiên của bạn.
Kết luận
Bài viết đã hướng dẫn bạn cách cài đặt và cấu hình một ứng dụng Flask cơ bản. Việc hiểu và áp dụng application factory sẽ giúp bạn dễ dàng mở rộng và bảo trì ứng dụng trong tương lai.
source: viblo