Đây là Bài 2 trong chuối các bài hướng dẫn sử dụng Python Flask cơ bản.
Tạo môi trường dự án
Bước đầu tiên, bạn tạo môi trường dự án với virtual environment (môi trường ảo). Tên dự án: flask-customer, đây cũng là tên thư mục gốc. Thư mục cho môi trường ảo: venv
$ mkdir flask-customer
$ cd flask-customer
$ python3 -m venv venv
Môi trường ảo cho phép các thư viện mà dự án của bản sử dụng sẽ nằm trọn vẹn và độc lập trong thư mục của dự án, và môi trường chạy của dự án. Điều này hết sức tiện lợi bởi bạn có thể có các dự án khác nhau, với yêu cầu môi trường khác nhau về phiên bản.
Kích hoạt môi trường ảo:
$ . venv/bin/activate
Cài đặt Flask
Sau khi đã kích hoạt môi trường ảo, ngay tại thư mục của dự án, chúng ta sẽ dùng lệnh pip (công cụ quản lý thư viện của Python) để cài đặt thư viện Flask:
$ pip3 install Flask
Tạo App
Trong thư mục gốc của dự án, chúng ta sẽ tạo app mang tên my-customer, với file khởi tạo của app: __init__.py. File __init__.py sẽ giúp cho Python có các thông tin về app của bạn.
$ mkdir my-customer
$ cd my-customer
Trong thư mục my-customer, tạo file __init__.py với nội dung như sau:
import os
from flask import Flask
def create_app(test_config=None):
# tạo app
app = Flask(__name__, instance_relative_config=True)
app.config.from_mapping(
SECRET_KEY='my-secret-key',
DATABASE=os.path.join(app.instance_path, 'mycustomer.sqlite'),
)
if test_config is None:
# load the instance config, if it exists, when not testing
app.config.from_pyfile('config.py', silent=True)
else:
# load the test config if passed in
app.config.from_mapping(test_config)
# ensure the instance folder exists
try:
os.makedirs(app.instance_path)
except OSError:
pass
# Mội đường url cở bản để test app mới của chúng ta. Nội dung trả về là "Xin chào!"
@app.route('/hi')
def hello():
return 'Xin chào!'
return app
Chạy app
Chúc mừng bạn! Vậy là bạn đã sẵn sàng để chạy app của mình lần đầu tiên. Trước hết hãy trở về thư mục mẹ của dự án, “flask-customer”.
Chạy các lệnh sau:
$ export FLASK_APP=my-customer
$ export FLASK_ENV=development
$ flask run
Nếu không có lỗi gì khác, bạn sẽ thấy kết quả như sau:
$ flask run
* Serving Flask app 'my-customer' (lazy loading)
* Environment: development
* Debug mode: on
* Running on http://127.0.0.1:5000 (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 961-674-930
Bật trình duyệt và nhập http://127.0.0.1:5000/hi (Chú ý, “/hi” chính là đường dẫn chúng ta định nghĩa trong __init__.py), và bạn sẽ thấy nội dung của ứng dụng.
Ở bài tiếp theo, chúng ta sẽ học cách sử dụng cơ sở dữ liệu để lưu giữ và truy vấn thông tin khách hàng: Sử dụng cơ sở dữ liệu sqlite với Python Flask.

