Đây là mẫu cơ sở cho các ứng dụng web Flask. Nó cung cấp một điểm khởi đầu có cấu trúc cho các dự án mới, tuân thủ các phương pháp hay nhất trong quá trình phát triển Flask và tổ chức dự án.
- Thiết kế mô-đun sử dụng Blueprints.
- Xử lý lỗi đối với mã trạng thái HTTP 400, 403, 404 và 500.
- Kết xuất mẫu bằng Jinja2.
- Cấu hình dựa trên môi trường thông qua tệp
.env
. - Xử lý tải lên tệp cơ bản và phân phát tệp tĩnh.
- Ghi nhật ký được cấu hình trước.
- Sao chép kho lưu trữ.
- Sao chép
.env.example
sang.env
và đặt các biến môi trường của bạn. python3 -m venv venv
source venv/bin/activate
- Cài đặt phụ thuộc:
pip install -r requirements.txt
. - Chạy ứng dụng:
flask run
.# Nếu chạy dòng này thì không cần chạy dòng dưới - Chạy Gunicorn:
gunicorn --bind 127.0.0.1:5000 wsgi:app
# Nếu chạy dòng này thì không cần chạy dòng trên
- flask db init
- flask db migrate -m "Initial migration."
- flask db upgrade
app/
: Gói ứng dụng chứa Blueprints, static files, templates, và routes.app/admin
: Kế hoạch chi tiết cho các tuyến ứng dụng quản trị.app/crawler
: Thư mục chứa file crawl dữ liệu và những thứ liên quan.app/main/
: Kế hoạch chi tiết cho các tuyến ứng dụng người dùng.app/models
: Gói ứng dụng models, có thể chứa các hàm hoặc biến dùng chung cho tất cả các models.app/static/
: Thư mục dành cho các tệp CSS, JavaScript và hình ảnh.app/templates/
: Mẫu Jinja2 cho ứng dụng.instance/
: Folder for instance-specific configurations (not under version control).migrations
: Thư mục chứa các file liên quan đến quá trình di chuyển (migration) cơ sở dữ liệu, được tạo ra bởi Flask-Migrate và Alembic.tests
: Chứa các test cho gói ứng dụng.utils
: Thư mục chứa các hàm sử dụng chung.env
: General environment variables (not to be committed)..env.example
.flaskenv
: File chứa các biến môi trường dành riêng cho Flask..gitignore
:application.py
: Entry point for the Flask application.config.py
: Chứa các thiết lập cấu hình của ứng dụng.flask-template.log
README.md
: File chứa thông tin và hướng dẫn sử dụng dự ánrequirements.txt
: Danh sách các thư viện và phiên bản cần cài đặt cho dự án.
app/
: Gói ứng dụng chứa Blueprints, static files, templates, và routes.app/admin
: Kế hoạch chi tiết cho các tuyến ứng dụng quản trị.app/crawler
: Thư mục chứa file crawl dữ liệu và những thứ liên quan.app/main/
: Kế hoạch chi tiết cho các tuyến ứng dụng người dùng.app/models
: Gói ứng dụng models, có thể chứa các hàm hoặc biến dùng chung cho tất cả các models.app/static/
: Thư mục dành cho các tệp CSS, JavaScript và hình ảnh.app/templates/
: Mẫu Jinja2 cho ứng dụng.instance/
: Folder for instance-specific configurations (not under version control).migrations
: Thư mục chứa các file liên quan đến quá trình di chuyển (migration) cơ sở dữ liệu, được tạo ra bởi Flask-Migrate và Alembic.tests
: Chứa các test cho gói ứng dụng.utils
: Thư mục chứa các hàm sử dụng chung.env
: General environment variables (not to be committed)..env.example
.flaskenv
: File chứa các biến môi trường dành riêng cho Flask..gitignore
:application.py
: Entry point for the Flask application.config.py
: Chứa các thiết lập cấu hình của ứng dụng.flask-template.log
README.md
: File chứa thông tin và hướng dẫn sử dụng dự ánrequirements.txt
: Danh sách các thư viện và phiên bản cần cài đặt cho dự án.
Định cấu hình ứng dụng bằng tệp .env
. Tham chiếu .env.example
cho các biến bắt buộc.
Để tạo một dự án mới:
- Sao chép kho lưu trữ này.
- Đổi tên thư mục dự án.
- Khởi tạo kho lưu trữ git mới.
- Tùy chỉnh Bản thiết kế và mẫu nếu cần.
Đóng góp cho mẫu đều được chào đón. Vui lòng phân nhánh kho lưu trữ và gửi yêu cầu kéo.
Dự án này được cấp phép theo Giấy phép MIT - xem tệp LICENSE.md để biết chi tiết.
Đặc biệt cảm ơn tất cả những người đóng góp và duy trì Flask cũng như các tiện ích mở rộng của nó.