Tác giả đã chọn quỹ nguồn mở và miễn phí để nhận quyên góp như một phần của chương trình Write for quyên góp.
Giới thiệu
Trong các ứng dụng web, bạn thường cần một cơ sở dữ liệu, là một bộ sưu tập dữ liệu có tổ chức. Bạn sử dụng cơ sở dữ liệu để lưu trữ và duy trì dữ liệu liên tục có thể được truy xuất và thao tác hiệu quả. Ví dụ: trong một ứng dụng truyền thông xã hội, bạn có một cơ sở dữ liệu trong đó dữ liệu người dùng (thông tin cá nhân, bài đăng, nhận xét, người theo dõi) được lưu trữ theo cách có thể được thao tác hiệu quả. Bạn có thể thêm dữ liệu vào cơ sở dữ liệu, truy xuất nó, sửa đổi nó hoặc xóa nó, tùy thuộc vào các yêu cầu và điều kiện khác nhau. Trong một ứng dụng web, các yêu cầu này có thể là người dùng thêm một bài đăng mới, xóa một bài đăng hoặc xóa tài khoản của họ, điều này có thể hoặc không thể xóa bài đăng của họ. Các hành động bạn thực hiện để thao tác dữ liệu sẽ phụ thuộc vào các tính năng cụ thể trong ứng dụng của bạn. Ví dụ: bạn có thể không muốn người dùng thêm bài đăng không có tiêu đề.
Flask là một khung web Python nhẹ, cung cấp các công cụ và tính năng hữu ích để tạo các ứng dụng web bằng ngôn ngữ Python. PostgreSQL, hoặc Postgres, là một hệ thống quản lý cơ sở dữ liệu quan hệ cung cấp việc triển khai ngôn ngữ truy vấn SQL. Nó tuân thủ các tiêu chuẩn và có nhiều tính năng nâng cao như giao dịch đáng tin cậy và đồng thời mà không cần khóa đọc.
Trong hướng dẫn này, bạn sẽ xây dựng một ứng dụng web đánh giá sách nhỏ cho thấy cách sử dụng thư viện
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Điều kiện tiên quyết
Một môi trường lập trình Python 3 địa phương. Thực hiện theo hướng dẫn để phân phối của bạn trong cách cài đặt và thiết lập môi trường lập trình cục bộ cho Sê -ri Python 3. Trong hướng dẫn này, thư mục dự án được gọi là
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Một sự hiểu biết về các khái niệm bình cơ bản, chẳng hạn như các tuyến đường, xem các chức năng và mẫu. Nếu bạn không quen thuộc với bình, hãy xem cách tạo ứng dụng web đầu tiên của bạn bằng Flask và Python và cách sử dụng các mẫu trong ứng dụng bình.
Một sự hiểu biết về các khái niệm HTML cơ bản. Bạn có thể xem lại cách xây dựng một trang web với loạt hướng dẫn HTML để biết kiến thức nền.
PostgreSQL được cài đặt trên máy cục bộ của bạn và truy cập vào dấu nhắc PostgreSQL. Thực hiện theo cách cài đặt và sử dụng PostgreSQL trên Ubuntu 20.04 để thiết lập cơ sở dữ liệu PostgreSQL của bạn.
Bước 1 - Tạo cơ sở dữ liệu và người dùng PostgreSQL
Trong bước này, bạn sẽ tạo một cơ sở dữ liệu có tên
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- \l
Trong quá trình cài đặt Postgres, người dùng hệ điều hành có tên
- \l
- \l
- \l
- \l
Đăng nhập vào phiên Postgres tương tác bằng lệnh sau:
- sudo -iu postgres psql
Bạn sẽ được cung cấp một lời nhắc PostgreSQL nơi bạn có thể thiết lập các yêu cầu của mình.
Đầu tiên, hãy tạo cơ sở dữ liệu cho dự án của bạn:
- CREATE DATABASE flask_db;
Lưu ý: Mỗi câu lệnh Postgres phải kết thúc bằng một đại hội, vì vậy hãy đảm bảo rằng lệnh của bạn kết thúc bằng một câu nếu bạn đang gặp vấn đề. Every Postgres statement must end with a semi-colon, so make sure that your command ends with one if you are experiencing issues.
Tiếp theo, tạo một người dùng cơ sở dữ liệu cho dự án của chúng tôi. Đảm bảo chọn mật khẩu an toàn:
- CREATE USER sammy WITH PASSWORD 'password';
Sau đó, cung cấp quyền truy cập người dùng mới này để quản lý cơ sở dữ liệu mới của bạn:
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Để xác nhận cơ sở dữ liệu đã được tạo, hãy lấy danh sách cơ sở dữ liệu bằng cách nhập lệnh sau:
- \l
Bạn sẽ thấy
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Khi bạn kết thúc, thoát khỏi lời nhắc PostgreSQL bằng cách nhập:
- \q
Postgres hiện được thiết lập để bạn có thể kết nối và quản lý thông tin cơ sở dữ liệu của nó thông qua Python bằng thư viện
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Bước 2 - Cài đặt bình và psycopg2
Trong bước này, bạn sẽ cài đặt Flask và thư viện
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Với môi trường ảo được kích hoạt, sử dụng
- \l
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- pip install Flask psycopg2-binary
Sau khi cài đặt được hoàn thành thành công, bạn sẽ thấy một dòng tương tự như sau ở cuối đầu ra:
Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2Bây giờ bạn có các gói cần thiết được cài đặt trên môi trường ảo của bạn. Tiếp theo, bạn sẽ kết nối và thiết lập cơ sở dữ liệu của mình.
Bước 3 - Thiết lập cơ sở dữ liệu
Trong bước này, bạn sẽ tạo một tệp Python trong thư mục dự án
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Đầu tiên với môi trường lập trình của bạn được kích hoạt, hãy mở một tệp mới có tên
- \q
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- nano init_db.py
Tệp này sẽ mở kết nối với cơ sở dữ liệu
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- \q
flask_app/init_db.py
import os import psycopg2 conn = psycopg2.connect( host="localhost", database="flask_db", user=os.environ['DB_USERNAME'], password=os.environ['DB_PASSWORD']) # Open a cursor to perform database operations cur = conn.cursor() # Execute a command: this creates a new table cur.execute('DROP TABLE IF EXISTS books;') cur.execute('CREATE TABLE books (id serial PRIMARY KEY,' 'title varchar (150) NOT NULL,' 'author varchar (50) NOT NULL,' 'pages_num integer NOT NULL,' 'review text,' 'date_added date DEFAULT CURRENT_TIMESTAMP);' ) # Insert data into the table cur.execute('INSERT INTO books (title, author, pages_num, review)' 'VALUES (%s, %s, %s, %s)', ('A Tale of Two Cities', 'Charles Dickens', 489, 'A great classic!') ) cur.execute('INSERT INTO books (title, author, pages_num, review)' 'VALUES (%s, %s, %s, %s)', ('Anna Karenina', 'Leo Tolstoy', 864, 'Another great classic!') ) conn.commit() cur.close() conn.close()Lưu và đóng tập tin.
Trong tệp này, trước tiên bạn nhập mô -đun
- \q
Bạn nhập thư viện
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- \q
- pip install Flask psycopg2-binary
Bạn cung cấp tên người dùng và mật khẩu của mình thông qua đối tượng
- pip install Flask psycopg2-binary
- pip install Flask psycopg2-binary
- pip install Flask psycopg2-binary
Bạn tạo một con trỏ gọi là
- pip install Flask psycopg2-binary
- pip install Flask psycopg2-binary
Bạn sử dụng phương thức con trỏ
- pip install Flask psycopg2-binary
- \q
- \q
- \q
Sau đó, bạn sử dụng
Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 0 để tạo một bảng có tên- \q
Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 2: Một ID thuộc loạiOutput
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 3, là một số nguyên tự động. Cột này đại diện cho một khóa chính mà bạn chỉ định bằng cách sử dụng từ khóaOutput
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 4. Cơ sở dữ liệu sẽ gán một giá trị duy nhất cho khóa này cho mỗi mục.Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 5: Tiêu đề cuốn sách của loạiOutput
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 6, đây là loại ký tự có độ dài biến với giới hạn.Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 7 có nghĩa là tiêu đề có thể dài tới 150 ký tự.Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 8 biểu thị rằng cột này có thể trống rỗng.Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 9: Tác giả cuốn sách, với giới hạn 50 ký tự.Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 8 biểu thị rằng cột này có thể trống rỗng.- nano init_db.py
Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 8 biểu thị rằng cột này có thể trống rỗng.- nano init_db.py
- nano init_db.py
- nano init_db.py
- nano init_db.py
- nano init_db.py
Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 2, bạn không cần chỉ định giá trị cho cột này, vì nó sẽ được tự động điền vào.
Sau khi tạo bảng, bạn sử dụng phương pháp con trỏ ____ ____66 để chèn hai cuốn sách vào bàn, một câu chuyện về hai thành phố của Charles Dickens và Anna Karenina của Leo Tolstoy. Bạn sử dụng trình giữ chỗ import os import psycopg2 conn = psycopg2.connect( host="localhost", database="flask_db", user=os.environ['DB_USERNAME'], password=os.environ['DB_PASSWORD']) # Open a cursor to perform database operations cur = conn.cursor() # Execute a command: this creates a new table cur.execute('DROP TABLE IF EXISTS books;') cur.execute('CREATE TABLE books (id serial PRIMARY KEY,' 'title varchar (150) NOT NULL,' 'author varchar (50) NOT NULL,' 'pages_num integer NOT NULL,' 'review text,' 'date_added date DEFAULT CURRENT_TIMESTAMP);' ) # Insert data into the table cur.execute('INSERT INTO books (title, author, pages_num, review)' 'VALUES (%s, %s, %s, %s)', ('A Tale of Two Cities', 'Charles Dickens', 489, 'A great classic!') ) cur.execute('INSERT INTO books (title, author, pages_num, review)' 'VALUES (%s, %s, %s, %s)', ('Anna Karenina', 'Leo Tolstoy', 864, 'Another great classic!') ) conn.commit() cur.close() conn.close() 0 để chuyển các giá trị cho câu lệnh SQL.
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Khi bạn hoàn tất việc chèn dữ liệu sách vào bảng của mình, bạn sử dụng phương thức import os import psycopg2 conn = psycopg2.connect( host="localhost", database="flask_db", user=os.environ['DB_USERNAME'], password=os.environ['DB_PASSWORD']) # Open a cursor to perform database operations cur = conn.cursor() # Execute a command: this creates a new table cur.execute('DROP TABLE IF EXISTS books;') cur.execute('CREATE TABLE books (id serial PRIMARY KEY,' 'title varchar (150) NOT NULL,' 'author varchar (50) NOT NULL,' 'pages_num integer NOT NULL,' 'review text,' 'date_added date DEFAULT CURRENT_TIMESTAMP);' ) # Insert data into the table cur.execute('INSERT INTO books (title, author, pages_num, review)' 'VALUES (%s, %s, %s, %s)', ('A Tale of Two Cities', 'Charles Dickens', 489, 'A great classic!') ) cur.execute('INSERT INTO books (title, author, pages_num, review)' 'VALUES (%s, %s, %s, %s)', ('Anna Karenina', 'Leo Tolstoy', 864, 'Another great classic!') ) conn.commit() cur.close() conn.close() 2 để thực hiện giao dịch và áp dụng các thay đổi vào cơ sở dữ liệu. Sau đó, bạn làm sạch mọi thứ bằng cách đóng con trỏ bằng import os import psycopg2 conn = psycopg2.connect( host="localhost", database="flask_db", user=os.environ['DB_USERNAME'], password=os.environ['DB_PASSWORD']) # Open a cursor to perform database operations cur = conn.cursor() # Execute a command: this creates a new table cur.execute('DROP TABLE IF EXISTS books;') cur.execute('CREATE TABLE books (id serial PRIMARY KEY,' 'title varchar (150) NOT NULL,' 'author varchar (50) NOT NULL,' 'pages_num integer NOT NULL,' 'review text,' 'date_added date DEFAULT CURRENT_TIMESTAMP);' ) # Insert data into the table cur.execute('INSERT INTO books (title, author, pages_num, review)' 'VALUES (%s, %s, %s, %s)', ('A Tale of Two Cities', 'Charles Dickens', 489, 'A great classic!') ) cur.execute('INSERT INTO books (title, author, pages_num, review)' 'VALUES (%s, %s, %s, %s)', ('Anna Karenina', 'Leo Tolstoy', 864, 'Another great classic!') ) conn.commit() cur.close() conn.close() 3 và kết nối với import os import psycopg2 conn = psycopg2.connect( host="localhost", database="flask_db", user=os.environ['DB_USERNAME'], password=os.environ['DB_PASSWORD']) # Open a cursor to perform database operations cur = conn.cursor() # Execute a command: this creates a new table cur.execute('DROP TABLE IF EXISTS books;') cur.execute('CREATE TABLE books (id serial PRIMARY KEY,' 'title varchar (150) NOT NULL,' 'author varchar (50) NOT NULL,' 'pages_num integer NOT NULL,' 'review text,' 'date_added date DEFAULT CURRENT_TIMESTAMP);' ) # Insert data into the table cur.execute('INSERT INTO books (title, author, pages_num, review)' 'VALUES (%s, %s, %s, %s)', ('A Tale of Two Cities', 'Charles Dickens', 489, 'A great classic!') ) cur.execute('INSERT INTO books (title, author, pages_num, review)' 'VALUES (%s, %s, %s, %s)', ('Anna Karenina', 'Leo Tolstoy', 864, 'Another great classic!') ) conn.commit() cur.close() conn.close() 4.
Để kết nối cơ sở dữ liệu được thiết lập, hãy đặt các biến môi trường
- pip install Flask psycopg2-binary
- pip install Flask psycopg2-binary
- CREATE DATABASE flask_db;
Bây giờ, hãy chạy tệp
- \q
- CREATE DATABASE flask_db;
Khi tệp hoàn tất việc thực thi không có lỗi, bảng
- \q
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Đăng nhập vào phiên Postgres tương tác để kiểm tra bảng
- \q
- sudo -iu postgres psql
Kết nối với cơ sở dữ liệu
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Sau đó sử dụng tuyên bố
- CREATE DATABASE flask_db;
- \q
- CREATE DATABASE flask_db;
Bạn sẽ thấy một đầu ra như sau:
- CREATE DATABASE flask_db;
Thoát khỏi phiên tương tác với
- CREATE DATABASE flask_db;
Tiếp theo, bạn sẽ tạo một ứng dụng bình nhỏ, kết nối với cơ sở dữ liệu, truy xuất hai đánh giá sách bạn đã chèn vào cơ sở dữ liệu và hiển thị chúng trên trang Index.
Bước 4 - Hiển thị sách
Trong bước này, bạn sẽ tạo một ứng dụng Flask với một trang chỉ mục truy xuất các cuốn sách có trong cơ sở dữ liệu và hiển thị chúng.
Với môi trường lập trình của bạn được kích hoạt và cài đặt bình, mở một tệp có tên
- CREATE DATABASE flask_db;
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- CREATE DATABASE flask_db;
Tệp này sẽ thiết lập kết nối cơ sở dữ liệu của bạn và tạo một tuyến bình đơn để sử dụng kết nối đó. Thêm mã sau vào tệp:
flask_app/app.py
- CREATE DATABASE flask_db;
Lưu và đóng tập tin.
Tại đây, bạn nhập mô -đun
- \q
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Bạn xác định một hàm gọi là
- CREATE DATABASE flask_db;
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- pip install Flask psycopg2-binary
- pip install Flask psycopg2-binary
- CREATE DATABASE flask_db;
Sau đó, bạn tạo một tuyến đường chính
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- \q
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- \q
Để hiển thị các cuốn sách bạn có trong cơ sở dữ liệu của mình trên trang Index, trước tiên bạn sẽ tạo một mẫu cơ sở, sẽ có tất cả các mẫu HTML cơ bản mà các mẫu khác cũng sẽ sử dụng để tránh lặp lại mã. Sau đó, bạn sẽ tạo tệp mẫu
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Tạo thư mục
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Thêm mã sau bên trong tệp
- CREATE DATABASE flask_db;
flask_app/templates/base.html
- CREATE DATABASE flask_db;
Lưu và đóng tập tin.
Tại đây, bạn nhập mô -đun
- \q
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Bạn xác định một hàm gọi là
- CREATE DATABASE flask_db;
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- pip install Flask psycopg2-binary
- pip install Flask psycopg2-binary
- CREATE DATABASE flask_db;
- CREATE USER sammy WITH PASSWORD 'password';
Sau đó, bạn tạo một tuyến đường chính
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- \q
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- \q
flask_app/templates/index.html
- CREATE USER sammy WITH PASSWORD 'password';
Lưu và đóng tập tin.
Tại đây, bạn nhập mô -đun
- \q
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Bạn xác định một hàm gọi là
- CREATE DATABASE flask_db;
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
- pip install Flask psycopg2-binary
- pip install Flask psycopg2-binary
- CREATE DATABASE flask_db;
Sau đó, bạn tạo một tuyến đường chính
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- \q
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- \q
- CREATE USER sammy WITH PASSWORD 'password';
Để hiển thị các cuốn sách bạn có trong cơ sở dữ liệu của mình trên trang Index, trước tiên bạn sẽ tạo một mẫu cơ sở, sẽ có tất cả các mẫu HTML cơ bản mà các mẫu khác cũng sẽ sử dụng để tránh lặp lại mã. Sau đó, bạn sẽ tạo tệp mẫu
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Tạo thư mục
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE USER sammy WITH PASSWORD 'password';
Thêm mã sau bên trong tệp
- CREATE DATABASE flask_db;
- CREATE USER sammy WITH PASSWORD 'password';
Mẫu cơ sở này có tất cả các nồi hơi HTML mà bạn sẽ cần phải sử dụng lại trong các mẫu khác của bạn. Khối
Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 5 sẽ được thay thế để đặt tiêu đề cho mỗi trang và khối- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Tiếp theo, mở một mẫu gọi là
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Bước 5 - Thêm sách mới
Trong bước này, bạn sẽ tạo một tuyến đường mới để thêm sách và đánh giá mới vào cơ sở dữ liệu.
Bạn sẽ thêm một trang với một biểu mẫu web nơi người dùng nhập tiêu đề sách, tác giả sách, số lượng trang và đánh giá sách.
Để máy chủ phát triển chạy và mở một cửa sổ thiết bị đầu cuối mới.
Đầu tiên, hãy mở tệp
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Để xử lý biểu mẫu web, bạn sẽ cần nhập một vài thứ từ gói
- CREATE DATABASE flask_db;
- Đối tượng toàn cầu
- CREATE DATABASE flask_db;
- Hàm
- CREATE DATABASE flask_db;
- Hàm
- CREATE DATABASE flask_db;
Thêm các bản nhập này vào dòng đầu tiên trong tệp:
flask_app/app.py
- CREATE USER sammy WITH PASSWORD 'password';
Sau đó thêm tuyến sau ở cuối tệp
- CREATE DATABASE flask_db;
flask_app/app.py
- CREATE USER sammy WITH PASSWORD 'password';
Lưu và đóng tập tin.
Trong tuyến đường này, bạn chuyển bộ tuple
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Mở mẫu
- CREATE DATABASE flask_db;
- CREATE USER sammy WITH PASSWORD 'password';
Thêm mã sau vào nó:
flask_app/templates/create.html
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Lưu và đóng tập tin.
Trong tuyến đường này, bạn chuyển bộ tuple
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Mở mẫu
- CREATE DATABASE flask_db;
Thêm mã sau vào nó:
Bạn mở rộng mẫu cơ sở, đặt tiêu đề làm tiêu đề và sử dụng thẻ
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Bạn có một trường văn bản có tên
Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 5, mà bạn sẽ sử dụng để truy cập dữ liệu tiêu đề trong tuyến đường- CREATE DATABASE flask_db;
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Bạn có một trường văn bản cho tác giả, một trường số cho số trang và khu vực văn bản để xem xét sách.Add a New Book page with an input field for a book title, one for its author, and one for the number of pages the book has, a text area for the book’s review, and a Submit button.
Cuối cùng, bạn có một nút gửi ở cuối biểu mẫu.
Bây giờ, với máy chủ phát triển đang chạy, hãy sử dụng trình duyệt của bạn để điều hướng đến tuyến đường
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Bạn sẽ thấy một trang Sách mới với trường đầu vào cho một tiêu đề sách, một cho tác giả của nó và một cho số trang mà cuốn sách có, một khu vực văn bản để đánh giá sách và một nút gửi.
flask_app/app.py
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Lưu và đóng tập tin.
Trong tuyến đường này, bạn chuyển bộ tuple
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Mở mẫu
- CREATE DATABASE flask_db;
Thêm mã sau vào nó:
Bạn mở rộng mẫu cơ sở, đặt tiêu đề làm tiêu đề và sử dụng thẻ
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Bạn có một trường văn bản có tên
Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 5, mà bạn sẽ sử dụng để truy cập dữ liệu tiêu đề trong tuyến đường- CREATE DATABASE flask_db;
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Bạn có một trường văn bản cho tác giả, một trường số cho số trang và khu vực văn bản để xem xét sách.
Cuối cùng, bạn có một nút gửi ở cuối biểu mẫu.
Bây giờ, với máy chủ phát triển đang chạy, hãy sử dụng trình duyệt của bạn để điều hướng đến tuyến đường
- CREATE DATABASE flask_db;
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Bạn sẽ thấy một trang Sách mới với trường đầu vào cho một tiêu đề sách, một cho tác giả của nó và một cho số trang mà cuốn sách có, một khu vực văn bản để đánh giá sách và một nút gửi.
flask_app/templates/base.html
- GRANT ALL PRIVILEGES ON DATABASE flask_db TO sammy;
Lưu và đóng tập tin.
Trong tuyến đường này, bạn chuyển bộ tuple
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
- CREATE DATABASE flask_db;
Mở mẫu
- CREATE DATABASE flask_db;
Thêm mã sau vào nó:
Bạn mở rộng mẫu cơ sở, đặt tiêu đề làm tiêu đề và sử dụng thẻ - CREATE DATABASE flask_db;
66 với thuộc tính - CREATE DATABASE flask_db;
67 được đặt thành - CREATE DATABASE flask_db;
68 để chỉ ra rằng biểu mẫu sẽ gửi yêu cầu POST.
Bạn có một trường văn bản có tên
Output
Successfully installed Flask-2.0.2 Jinja2-3.0.3 MarkupSafe-2.0.1 Werkzeug-2.0.2 click-8.0.3 itsdangerous-2.0.1 psycopg2-binary-2.9.2 5, mà bạn sẽ sử dụng để truy cập dữ liệu tiêu đề trong tuyến đường- CREATE DATABASE flask_db;
Bạn có một trường văn bản cho tác giả, một trường số cho số trang và khu vực văn bản để xem xét sách.