Bình phpmyadmin

Trong loạt bài này, chúng ta sẽ sử dụng Python, Flask và MySQL để tạo một ứng dụng web đơn giản từ đầu. Nó sẽ là một ứng dụng danh sách nhóm đơn giản, nơi người dùng có thể đăng ký, đăng nhập và tạo danh sách nhóm của họ

Hướng dẫn này giả định rằng bạn đã có một số kiến ​​thức cơ bản về ngôn ngữ lập trình Python. Chúng tôi sẽ sử dụng Flask, một khung ứng dụng web Python, để tạo ứng dụng của chúng tôi, với MySQL là phần cuối

Giới thiệu về Python Flask

Flask là một khung Python để tạo các ứng dụng web. Từ trang web chính thức

Flask là một microframework cho Python dựa trên Werkzeug, Jinja 2 và những mục đích tốt

Khi chúng ta nghĩ về Python, khung thực tế xuất hiện trong đầu chúng ta là khung Django. Nhưng từ quan điểm của người mới bắt đầu Python, Flask dễ bắt đầu hơn khi so sánh với Django

1. Thiết lập Flask

Thiết lập Flask khá đơn giản và nhanh chóng. Với trình quản lý gói

@app.route["/"]
52, tất cả những gì chúng ta cần làm là

1
pip install flask

Khi bạn đã hoàn tất việc cài đặt Flask, hãy tạo một thư mục có tên FlaskApp. Điều hướng đến thư mục FlaskApp và tạo một tệp có tên ứng dụng. py. Nhập mô-đun

@app.route["/"]
53 và tạo một ứng dụng bằng Flask như được hiển thị

1
from flask import Flask
2
app = Flask[__name__]

Bây giờ hãy xác định tuyến đường cơ bản

@app.route["/"]
54 và trình xử lý yêu cầu tương ứng của nó

1
@app.route["/"]
2
def main[]:
pip install flask
0
pip install flask
1

Tiếp theo, kiểm tra xem tệp được thực thi có phải là chương trình chính hay không và chạy ứng dụng

1
pip install flask
3_______6_______2_______5

Lưu các thay đổi và chạy ứng dụng. py

1
pip install flask
7

Trỏ trình duyệt của bạn tới http. //máy chủ cục bộ. 5000/ và bạn sẽ có thông báo chào mừng

2. Tạo Trang chủ

Đầu tiên, khi ứng dụng chạy, chúng ta sẽ hiển thị trang chủ với các mục danh sách nhóm mới nhất do người dùng thêm vào. Vì vậy, hãy thêm trang chủ của bạn vào thư mục ứng dụng của bạn

Flask tìm kiếm các tệp mẫu bên trong thư mục mẫu. Vì vậy, hãy điều hướng đến thư mục FlaskApp và tạo một thư mục có tên là mẫu. Bên trong các mẫu, tạo một tệp có tên là chỉ mục. html. Mở chỉ mục. html và thêm HTML sau

1
pip install flask
9
2
1
1
pip install flask
0
1
3
1
4
1
5
1
6
1
7
1
8
1
5
from flask import Flask
0
from flask import Flask
1
from flask import Flask
2
from flask import Flask
3
from flask import Flask
4
from flask import Flask
5
from flask import Flask
6
from flask import Flask
7
from flask import Flask
8
from flask import Flask
9
2
0
2
1
2
2
2
3
2
4
2
5
2
6
2
7
1
5
2
9
app = Flask[__name__]
0
app = Flask[__name__]
1
app = Flask[__name__]
2
app = Flask[__name__]
3
app = Flask[__name__]
4
app = Flask[__name__]
5
app = Flask[__name__]
6
app = Flask[__name__]
7
app = Flask[__name__]
8
app = Flask[__name__]
9
1
0
1
1
1
2
1
3
1
4
1
5
1
6
1
7
1
8
1
9
@app.route["/"]
0
@app.route["/"]
1
@app.route["/"]
2
@app.route["/"]
3
@app.route["/"]
4
@app.route["/"]
5
@app.route["/"]

Mở ứng dụng lên. py và nhập

@app.route["/"]
55, mà chúng tôi sẽ sử dụng để hiển thị các tệp mẫu

1
1
40

Sửa đổi phương thức chính để trả về tệp mẫu được hiển thị

1
def main[]:
2
1
44

Lưu các thay đổi và khởi động lại máy chủ. Trỏ trình duyệt của bạn tới http. //máy chủ cục bộ. 5000/ và bạn sẽ có màn hình bên dưới

3. Tạo trang đăng ký

Bước 1

Thiết lập cơ sở dữ liệu

Chúng tôi sẽ sử dụng MySQL làm phần cuối. Vì vậy, hãy đăng nhập vào MySQL từ dòng lệnh hoặc nếu bạn thích GUI như MySQL Workbench, bạn cũng có thể sử dụng nó. Đầu tiên, tạo một cơ sở dữ liệu có tên là BuckList. Từ dòng lệnh

1
1
46

Nhập mật khẩu được yêu cầu và khi đăng nhập, hãy thực hiện lệnh sau để tạo cơ sở dữ liệu

1
1
48

Khi cơ sở dữ liệu đã được tạo, hãy tạo một bảng có tên là tbl_user như được hiển thị

1
1_______50_______6_______
1
52
pip install flask
0_______1_______54
1
4
1
56
1
6
1
58
1
8
1
60

Chúng tôi sẽ sử dụng

@app.route["/"]
56 cho ứng dụng Python của chúng tôi để tương tác với cơ sở dữ liệu MySQL. Vì vậy, khi bảng tbl_user đã được tạo, hãy tạo một thủ tục được lưu trữ có tên là sp_createUser để đăng ký người dùng

Khi tạo thủ tục lưu trữ để tạo người dùng trong bảng tbl_user, trước tiên chúng ta cần kiểm tra xem người dùng có cùng tên người dùng đã tồn tại chưa. Nếu nó tồn tại, chúng ta cần đưa ra lỗi cho người dùng, nếu không, chúng ta sẽ tạo người dùng trong bảng người dùng. Đây là cách thủ tục được lưu trữ sp_createUser sẽ trông như thế nào

1
1
62
2
1
64
pip install flask
0
1
66
1
4
1
68
1
6
1
70
1
8
1
72
from flask import Flask
0
1
74
from flask import Flask
2
1
76
from flask import Flask
4
1
78
from flask import Flask
6
1
80
from flask import Flask
8
1
78
2
0
1
84
2
2
1
78
2
4
1
88
2
5
1
90
2
7
1
92
2
9
1
94
app = Flask[__name__]
1
1
96
app = Flask[__name__]
3
1
98
app = Flask[__name__]
5
from flask import Flask
00
app = Flask[__name__]
7
1
90
app = Flask[__name__]
9
from flask import Flask
04
1
1
from flask import Flask
06
1
3
from flask import Flask
08
1
5
from flask import Flask
10
1
7
1
78
1
9
from flask import Flask
14
@app.route["/"]
1
from flask import Flask
16
@app.route["/"]
3_____

Bước 2

Tạo giao diện đăng ký

Điều hướng đến thư mục FlaskApp/templates và tạo một tệp HTML có tên là đăng ký. html. Thêm mã HTML sau để đăng ký. html

1
pip install flask
9
2
1
1
pip install flask
0
1
3
1
4
1
5
1
6
from flask import Flask
28
1
8
1
5
from flask import Flask
0
from flask import Flask
1
from flask import Flask
2
from flask import Flask
3
from flask import Flask
4
from flask import Flask
5
from flask import Flask
6
from flask import Flask
7
from flask import Flask
8
from flask import Flask
9
2
0
2
1
2
2
from flask import Flask
44
2
4
2
3
2
5
2
7
2
6
2
9
1
5
app = Flask[__name__]
1
app = Flask[__name__]
0
app = Flask[__name__]
3
app = Flask[__name__]
2
app = Flask[__name__]
5
from flask import Flask
57
app = Flask[__name__]
7
app = Flask[__name__]
6
app = Flask[__name__]
9
app = Flask[__name__]
8
1
1
1
0
1
3
1
2
1
5
1
4
1
7
1
6
1
9
1
8
@app.route["/"]
1
@app.route["/"]
0
@app.route["/"]
3
@app.route["/"]
2
@app.route["/"]
5________0____

Đồng thời thêm CSS sau khi đăng ký. css vào thư mục tĩnh bên trong FlaskApp

1
app = Flask[__name__]
51
2
app = Flask[__name__]
53
pip install flask
0
app = Flask[__name__]
55
1
4
app = Flask[__name__]
57
1
6
1
8
app = Flask[__name__]
60
from flask import Flask
0
app = Flask[__name__]
62
from flask import Flask
2
app = Flask[__name__]
64
from flask import Flask
4
app = Flask[__name__]
66
from flask import Flask
6
app = Flask[__name__]
57
from flask import Flask
8
app = Flask[__name__]
70
2
0
app = Flask[__name__]
72
2
2
app = Flask[__name__]
74
2
4
app = Flask[__name__]
57
2
5
app = Flask[__name__]
72
2
7
app = Flask[__name__]
80
2
9
app = Flask[__name__]
57
app = Flask[__name__]
1
app = Flask[__name__]
84
app = Flask[__name__]
3
app = Flask[__name__]
86
app = Flask[__name__]
5
app = Flask[__name__]
88
app = Flask[__name__]
7
app = Flask[__name__]
90
app = Flask[__name__]
9
app = Flask[__name__]
92
1
1
app = Flask[__name__]
94
1
3
app = Flask[__name__]
96
1
5
app = Flask[__name__]
98
1
7
app = Flask[__name__]
57
1
9
1
02
@app.route["/"]
1
1
04
@app.route["/"]
3
app = Flask[__name__]
57_____

trong ứng dụng. py, hãy thêm một phương thức khác có tên là

@app.route["/"]
57 để hiển thị trang đăng ký sau khi có yêu cầu tới
@app.route["/"]
58

1
1
28
2
1
30
pip install flask
0
1
32

Lưu các thay đổi và khởi động lại máy chủ. Nhấp vào nút Đăng ký trên trang chủ và bạn sẽ có trang đăng ký như được hiển thị

Bước 3

Triển khai phương thức đăng ký

Tiếp theo, chúng ta cần một phương thức phía máy chủ để giao diện người dùng tương tác với cơ sở dữ liệu MySQL. Vì vậy, hãy điều hướng đến FlaskApp và mở ứng dụng. py. Tạo một phương thức mới gọi là

@app.route["/"]
59 và cũng thêm một tuyến đường
@app.route["/"]
60. Đây là cách nó trông

1
1_______34
2
1
36
pip install flask
0_______1_______38

Chúng tôi sẽ sử dụng AJAX để đăng dữ liệu đăng ký của mình lên phương thức

@app.route["/"]
57, vì vậy chúng tôi cần chỉ định phương thức trong định nghĩa tuyến đường

Để đọc các giá trị đã đăng, chúng tôi cần nhập

@app.route["/"]
62 từ Flask

1
1
40

Sử dụng

@app.route["/"]
62, chúng ta có thể đọc các giá trị đã đăng như hình bên dưới

1
1
42
2
1
36
pip install flask
0
1
46
1
4
1
48
1
6
1
50
1
8
1
52

Khi các giá trị được đọc, chúng tôi chỉ cần kiểm tra xem chúng có hợp lệ hay không và hiện tại, hãy trả lại một tin nhắn đơn giản

1
1_______54
2
1
56
pip install flask
0
1
58
1
4
1
60
1
6
1
62
1
8_______1_______64
from flask import Flask
0
from flask import Flask
2
1
67
from flask import Flask
4
1
69_______5_______6____
1
71_______5_______8_______7_______8_______ 7

Đồng thời nhập

@app.route["/"]
64 từ Flask, vì chúng tôi đang sử dụng nó trong đoạn mã trên để trả về dữ liệu
@app.route["/"]
64

1
1
77

Bước 4

Tạo yêu cầu đăng ký

Chúng tôi sẽ sử dụng API

@app.route["/"]
66 để gửi yêu cầu đăng ký tới phương thức Python. Vì vậy, hãy đính kèm sự kiện nhấp vào nút đăng ký như được hiển thị

1
1
79
2
1
81
pip install flask
0
1
83
1
4
1
85
1
6
1
87
1
8
1
89
from flask import Flask
0
1
91
from flask import Flask
2
1
93
from flask import Flask
4
1
95
from flask import Flask
6
1
97
from flask import Flask
8
1
99
2
0
@app.route["/"]
01

Bạn nên đặt tập lệnh này bên trong thẻ

@app.route["/"]
67 ở cuối tài liệu đăng ký. Lưu tất cả các thay đổi và khởi động lại máy chủ. Từ trang Đăng ký, điền thông tin chi tiết và nhấp vào Đăng ký. Kiểm tra bảng điều khiển trình duyệt và bạn sẽ có thông báo bên dưới

1
@app.route["/"]
03

Bước 5

Gọi thủ tục lưu trữ MySQL

Khi chúng tôi có tên, địa chỉ email và mật khẩu, chúng tôi chỉ cần gọi thủ tục lưu trữ MySQL để tạo người dùng mới

Để kết nối với MySQL, chúng tôi sẽ sử dụng , đây là tiện ích mở rộng Flask. Để bắt đầu với Flask-MySQL, hãy cài đặt nó bằng trình quản lý gói

@app.route["/"]
52

1
@app.route["/"]
05

Nhập MySQL bên trong ứng dụng. py

1
@app.route["/"]
07

Trước đó, chúng tôi đã xác định ứng dụng của mình như được hiển thị

1
app = Flask[__name__]

Cùng với đó, bao gồm các cấu hình MySQL sau

1
0_______11_______6_______
pip install flask
0_______1_______4
@app.route["/"]
15
1
6
@app.route["/"]
17
1
8_______0_______19
from flask import Flask
0
@app.route["/"]
21
from flask import Flask
2
@app.route["/"]
23
from flask import Flask
4
@app.route["/"]
25

Đầu tiên, hãy tạo kết nối MySQL

1
@app.route["/"]
27

Khi kết nối được tạo, chúng tôi sẽ yêu cầu một

@app.route["/"]
69 để truy vấn thủ tục được lưu trữ của chúng tôi. Vì vậy, sử dụng kết nối
@app.route["/"]
70, tạo một con trỏ

1
@app.route["/"]
29

Trước khi gọi thủ tục tạo người dùng được lưu trữ, hãy tạo mật khẩu của chúng ta bằng cách sử dụng trình trợ giúp do Werkzeug cung cấp. Nhập mô-đun vào ứng dụng. py

1
@app.route["/"]
31

Sử dụng mô-đun tạo muối để tạo mật khẩu băm

1
@app.route["/"]
33

Bây giờ, hãy gọi thủ tục

@app.route["/"]
71

1
@app.route["/"]
35

Nếu thủ tục được thực hiện thành công, thì chúng tôi sẽ thực hiện các thay đổi và trả về thông báo thành công

1
0_______37_______6_______
pip install flask
0_______1_______4_______0_______41
1
6
@app.route["/"]
43
1
8
@app.route["/"]
45
from flask import Flask
0_______0_______47
from flask import Flask
2
@app.route["/"]
49

Lưu các thay đổi và khởi động lại máy chủ. Chuyển đến trang đăng ký và nhập tên, địa chỉ email và mật khẩu rồi nhấp vào nút Đăng ký. Khi tạo người dùng thành công, bạn sẽ thấy một thông báo trong bảng điều khiển trình duyệt của mình

1
@app.route["/"]
51

gói nó lên

Trong hướng dẫn này, chúng ta đã thấy cách bắt đầu tạo một ứng dụng web bằng Python Flask, MySQL và tiện ích mở rộng Flask-MySQL. Chúng tôi đã tạo và thiết kế các bảng cơ sở dữ liệu và một thủ tục được lưu trữ, đồng thời chúng tôi đã triển khai chức năng đăng ký. Trong hướng dẫn tiếp theo, chúng ta sẽ đưa loạt bài này lên một tầm cao mới bằng cách triển khai chức năng đăng nhập và một số tính năng khác

Mã nguồn cho hướng dẫn này có sẵn trên GitHub

Bài đăng này đã được cập nhật với sự đóng góp từ Jacob Jackson. Jacob là nhà phát triển web, nhà văn kỹ thuật, người làm nghề tự do và người đóng góp nguồn mở

Tôi có thể sử dụng MySQL với Flask không?

Dưới đây là 4 bước để bắt đầu với Flask MySQL Database Connection. Flask MySQL Bước 1. Kết nối Ứng dụng Flask với Cơ sở dữ liệu MySQL . Bình MySQL Bước 2. Cấu hình con trỏ kết nối MySQL. Bình MySQL Bước 3. Lập trình ứng dụng Flask.

Làm cách nào để kết nối Flask với cơ sở dữ liệu?

Trong bất kỳ thư mục nào bạn cảm thấy thoải mái, hãy tạo một thư mục và mở dòng lệnh trong thư mục. Tạo môi trường ảo python bằng lệnh bên dưới. Khi lệnh chạy xong, hãy kích hoạt môi trường ảo bằng lệnh bên dưới. Bây giờ, hãy cài đặt Flask bằng pip [trình cài đặt gói cho python]

Làm cách nào để chèn dữ liệu vào MySQL bằng Flask?

Thêm dữ liệu vào cơ sở dữ liệu bằng Flask .
nhập sqlite3 dưới dạng sql
def add_data[tiêu đề, nội dung]
# Kết nối với cơ sở dữ liệu
con = sql. kết nối ['shot_database. db']
# Bắt con trỏ
c = con. con trỏ[]
# Thêm dữ liệu

DB nào là tốt nhất cho Flask?

Flask có thể sử dụng SQLite và MySQL làm cơ sở dữ liệu phụ trợ. Chúng tôi khuyên bạn nên sử dụng SQLAlchemy làm ORM với các cơ sở dữ liệu quan hệ này.

Chủ Đề