Hướng dẫn how do i connect python to flask in html? - làm cách nào để kết nối python với flask trong html?

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

Flask là một khung web Python nhỏ và nhẹ, cung cấp các công cụ và tính năng hữu ích giúp việc tạo các ứng dụng web trong Python dễ dàng hơn. Nó mang lại sự linh hoạt cho các nhà phát triển và là một khung dễ tiếp cận hơn cho các nhà phát triển mới vì bạn có thể xây dựng một ứng dụng web một cách nhanh chóng chỉ bằng một tệp Python duy nhất. Bình cũng có thể mở rộng và không buộc một cấu trúc thư mục cụ thể hoặc yêu cầu mã nồi hơi phức tạp trước khi bắt đầu.

Là một phần của hướng dẫn này, bạn sẽ sử dụng bộ công cụ Bootstrap để tạo kiểu cho ứng dụng của bạn để nó hấp dẫn hơn. Bootstrap sẽ giúp bạn kết hợp các trang web đáp ứng trong ứng dụng web của bạn để nó cũng hoạt động tốt trên các trình duyệt di động mà không cần viết mã HTML, CSS và JavaScript của riêng bạn để đạt được các mục tiêu này. Bộ công cụ sẽ cho phép bạn tập trung vào việc học cách hoạt động của Flask.

Flask sử dụng công cụ mẫu Jinja để xây dựng các trang HTML động bằng cách sử dụng các khái niệm Python quen thuộc như biến, vòng lặp, danh sách, v.v. Bạn sẽ sử dụng các mẫu này như một phần của dự án này.

Trong hướng dẫn này, bạn sẽ xây dựng một blog web nhỏ bằng cách sử dụng Flask và Sqlite trong Python 3. Người dùng của ứng dụng có thể xem tất cả các bài đăng trong cơ sở dữ liệu của bạn và nhấp vào tiêu đề của một bài đăng để xem nội dung của nó với khả năng thêm Bài đăng mới cho cơ sở dữ liệu và chỉnh sửa hoặc xóa một bài đăng hiện có.

Điều kiện tiên quyết

Trước khi bạn bắt đầu làm theo hướng dẫn này, bạn sẽ cần:

  • Môi trường lập trình Python 3 cục bộ, hãy làm theo hướng dẫn để phân phối của bạn về 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 cho máy cục bộ của bạn. Trong hướng dẫn này, chúng tôi sẽ gọi thư mục dự án của chúng tôi
    1. export FLASK_APP=hello
    2.
  • Một sự hiểu biết về các khái niệm Python 3, chẳng hạn như các loại dữ liệu, câu lệnh có điều kiện, cho các vòng lặp, chức năng và các khái niệm khác như vậy. Nếu bạn không quen thuộc với Python, hãy xem cách mã hóa của chúng tôi trong Sê -ri Python 3.

Bước 1 - Cài đặt bình

Trong bước này, bạn sẽ kích hoạt môi trường Python của mình và cài đặt bình bằng trình cài đặt gói

  1. export FLASK_APP=hello
3.

Nếu bạn đã kích hoạt môi trường lập trình của mình, hãy đảm bảo rằng bạn có trong thư mục dự án của mình (

  1. export FLASK_APP=hello
2) và sử dụng lệnh sau để kích hoạt môi trường:

  1. source env/bin/activate

Khi môi trường lập trình của bạn được kích hoạt, lời nhắc của bạn sẽ có tiền tố

  1. export FLASK_APP=hello
5 có thể trông như sau:

Tiền tố này là một dấu hiệu cho thấy môi trường

  1. export FLASK_APP=hello
5 hiện đang hoạt động, có thể có một tên khác tùy thuộc vào cách bạn đặt tên cho nó trong quá trình tạo.

Lưu ý: Bạn có thể sử dụng Git, một hệ thống kiểm soát phiên bản, để quản lý và theo dõi hiệu quả quá trình phát triển cho dự án của bạn. Để tìm hiểu cách sử dụng Git, bạn có thể muốn xem phần giới thiệu của chúng tôi về việc sử dụng cài đặt Git và bài viết chi nhánh. You can use Git, a version control system, to effectively manage and track the development process for your project. To learn how to use Git, you might want to check out our Introduction to Git Installation Usage and Branches article.

Nếu bạn đang sử dụng Git, bạn nên bỏ qua thư mục

  1. export FLASK_APP=hello
5 mới được tạo trong tệp
  1. export FLASK_APP=hello
8 của bạn để tránh theo dõi các tệp không liên quan đến dự án.

Bây giờ bạn sẽ cài đặt các gói Python và cách ly mã dự án của bạn khỏi cài đặt hệ thống Python chính. Bạn sẽ làm điều này bằng cách sử dụng

  1. export FLASK_APP=hello
3 và
  1. export FLASK_ENV=development
0.

Để cài đặt bình, chạy lệnh sau:

  1. pip install flask

Sau khi cài đặt hoàn tất, hãy chạy lệnh sau để xác nhận cài đặt:

  1. python -c "import flask; print(flask.__version__)"

Bạn sử dụng giao diện dòng lệnh

  1. export FLASK_ENV=development
0 với tùy chọn
  1. export FLASK_ENV=development
2 để thực thi mã Python. Tiếp theo, bạn nhập gói
  1. export FLASK_ENV=development
3 với
  1. export FLASK_ENV=development
4 sau đó in phiên bản bình, được cung cấp thông qua biến
  1. export FLASK_ENV=development
5.

Đầu ra sẽ là một số phiên bản tương tự như sau:

Output

1.1.2

Bạn đã tạo ra thư mục dự án, môi trường ảo và bình cài đặt. Bây giờ bạn đã sẵn sàng để chuyển sang thiết lập ứng dụng cơ sở của bạn.

Bước 2 - Tạo một ứng dụng cơ sở

Bây giờ bạn đã thiết lập môi trường lập trình của mình, bạn sẽ bắt đầu sử dụng bình. Trong bước này, bạn sẽ tạo một ứng dụng web nhỏ bên trong tệp Python và chạy nó để khởi động máy chủ, điều này sẽ hiển thị một số thông tin trên trình duyệt.

Trong thư mục

  1. export FLASK_APP=hello
2 của bạn, hãy mở một tệp có tên
  1. export FLASK_ENV=development
7 để chỉnh sửa, sử dụng
  1. export FLASK_ENV=development
8 hoặc trình soạn thảo văn bản yêu thích của bạn:

  1. nano hello.py

Tệp

  1. export FLASK_ENV=development
7 này sẽ đóng vai trò là một ví dụ tối thiểu về cách xử lý các yêu cầu HTTP. Bên trong nó, bạn sẽ nhập đối tượng
  1. flask run
0 và tạo một hàm trả về phản hồi HTTP. Viết mã sau bên trong
  1. export FLASK_ENV=development
7:

flask_blog/hello.py

from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello():
    return 'Hello, World!'

Trong khối mã trước, trước tiên bạn nhập đối tượng

  1. flask run
0 từ gói
  1. export FLASK_ENV=development
3. Sau đó, bạn sử dụng nó để tạo phiên bản ứng dụng bình của bạn với tên
  1. flask run
4. Bạn vượt qua biến đặc biệt
  1. flask run
5 giữ tên của mô -đun Python hiện tại. Nó được sử dụng để nói với trường hợp mà nó nằm ở vị trí của bạn, bạn cần điều này bởi vì Flask thiết lập một số đường dẫn phía sau hậu trường.

Khi bạn tạo phiên bản

  1. flask run
4, bạn sử dụng nó để xử lý các yêu cầu web đến và gửi phản hồi cho người dùng.
  1. flask run
7 là một người trang trí biến hàm python thông thường thành hàm xem bình, để chuyển đổi giá trị trả về chức năng thành một phản hồi HTTP để được hiển thị bởi máy khách HTTP, chẳng hạn như trình duyệt web. Bạn chuyển giá trị
  1. flask run
8 sang
  1. flask run
9 để biểu thị rằng hàm này sẽ đáp ứng các yêu cầu web cho URL
00, đây là URL chính.

Hàm xem

01 Trả về chuỗi
02 dưới dạng phản hồi.

Lưu và đóng tập tin.

Để chạy ứng dụng web của bạn, trước tiên bạn sẽ nói cho Flask nơi tìm ứng dụng (tệp

  1. export FLASK_ENV=development
7 trong trường hợp của bạn) với biến môi trường
04:

  1. export FLASK_APP=hello

Sau đó chạy nó trong chế độ phát triển với biến môi trường

05:

  1. export FLASK_ENV=development

Cuối cùng, chạy ứng dụng bằng lệnh

06:

  1. flask run

Khi ứng dụng đang chạy, đầu ra sẽ như thế này:

0

Đầu ra trước có một số thông tin, chẳng hạn như:

  • Tên của ứng dụng bạn đang chạy.
  • Môi trường mà ứng dụng đang được chạy.
    07 biểu thị rằng trình gỡ lỗi nắp đang chạy. Điều này rất hữu ích khi phát triển vì nó cung cấp cho chúng tôi các thông báo lỗi chi tiết khi mọi thứ đi sai, điều này giúp khắc phục sự cố dễ dàng hơn.
  • Ứng dụng đang chạy cục bộ trên URL
    08,
    09 là IP đại diện cho máy của bạn
    10 và
    11 là số cổng.

Mở trình duyệt và nhập vào URL

08, bạn sẽ nhận được chuỗi
13 dưới dạng phản hồi, điều này xác nhận rằng ứng dụng của bạn đang chạy thành công.

Flask Flask sử dụng một máy chủ web đơn giản để phục vụ ứng dụng của chúng tôi trong môi trường phát triển, điều đó cũng có nghĩa là trình gỡ lỗi Flask đang chạy để làm cho lỗi bắt dễ dàng hơn. Máy chủ phát triển này không nên được sử dụng trong triển khai sản xuất. Xem trang Tùy chọn triển khai trên tài liệu Flask để biết thêm thông tin, bạn cũng có thể xem hướng dẫn triển khai Flask này. Flask uses a simple web server to serve our application in a development environment, which also means that the Flask debugger is running to make catching errors easier. This development server should not be used in a production deployment. See the Deployment Options page on the Flask documentation for more information, you can also check out this Flask deployment tutorial.

Bây giờ bạn có thể để máy chủ phát triển chạy trong thiết bị đầu cuối và mở một cửa sổ thiết bị đầu cuối khác. Di chuyển vào thư mục dự án nơi tọa lạc

  1. export FLASK_ENV=development
7, kích hoạt môi trường ảo, đặt các biến môi trường
05 và
04 và tiếp tục các bước tiếp theo. (Các lệnh này được liệt kê sớm hơn trong bước này.)

Lưu ý: Khi mở một thiết bị đầu cuối mới, điều quan trọng cần nhớ là kích hoạt môi trường ảo và thiết lập các biến môi trường

05 và
04.
: When opening a new terminal, it is important to remember activating the virtual environment and setting the environment variables
05 and
04.

Mặc dù máy chủ phát triển của ứng dụng Flask đã chạy, nhưng không thể chạy một ứng dụng bình khác với cùng một lệnh

06. Điều này là do
06 sử dụng số cổng
21 theo mặc định và một khi nó được thực hiện, nó sẽ không có sẵn để chạy một ứng dụng khác trên để bạn sẽ nhận được một lỗi tương tự như sau:

1

Để giải quyết vấn đề này, hãy dừng máy chủ hiện đang chạy qua

22, sau đó chạy lại
06 hoặc nếu bạn muốn chạy cả hai cùng một lúc, bạn có thể chuyển một số cổng khác cho đối số
24 Ứng dụng trên cổng
25 Sử dụng lệnh sau:

2

Bây giờ bạn có một ứng dụng web nhỏ. Bạn đã chạy ứng dụng của mình và hiển thị thông tin trên trình duyệt web. Tiếp theo, bạn sẽ sử dụng các tệp HTML trong ứng dụng của mình.

Bước 3 - Sử dụng các mẫu HTML

Hiện tại ứng dụng của bạn chỉ hiển thị một thông báo đơn giản mà không có HTML. Các ứng dụng web chủ yếu sử dụng HTML để hiển thị thông tin cho khách truy cập, do đó, hiện tại bạn sẽ làm việc để kết hợp các tệp HTML trong ứng dụng của mình, có thể được hiển thị trên trình duyệt web.

Flask cung cấp chức năng trợ giúp

26 cho phép sử dụng công cụ mẫu Jinja. Điều này sẽ giúp việc quản lý HTML dễ dàng hơn nhiều bằng cách viết mã HTML của bạn trong các tệp
27 cũng như sử dụng logic trong mã HTML của bạn. Bạn sẽ sử dụng các tệp HTML này, (mẫu) để xây dựng tất cả các trang ứng dụng của bạn, chẳng hạn như trang chính mà bạn sẽ hiển thị các bài đăng trên blog hiện tại, trang của bài đăng trên blog, trang nơi người dùng có thể thêm một người dùng mới bài, và như vậy.

Trong bước này, bạn sẽ tạo ứng dụng bình chính của mình trong một tệp mới.

Đầu tiên, trong thư mục

  1. export FLASK_APP=hello
2 của bạn, hãy sử dụng
  1. export FLASK_ENV=development
8 hoặc trình soạn thảo yêu thích của bạn để tạo và chỉnh sửa tệp
30 của bạn. Điều này sẽ chứa tất cả các mã bạn sẽ sử dụng để tạo ứng dụng viết blog:

3

Trong tệp mới này, bạn sẽ nhập đối tượng

  1. flask run
0 để tạo phiên bản ứng dụng bình như bạn đã làm trước đây. Bạn cũng sẽ nhập chức năng trợ giúp
26 cho phép bạn hiển thị các tệp mẫu HTML tồn tại trong thư mục
33 mà bạn sắp tạo. Tệp sẽ có một chức năng Chế độ xem duy nhất chịu trách nhiệm xử lý các yêu cầu đối với tuyến đường chính
00. Thêm nội dung sau:

flask_blog/app.py

4

Hàm xem

35 trả về kết quả của việc gọi
26 với
37 làm đối số, điều này cho
26 tìm một tệp gọi là
37 trong thư mục mẫu. Cả thư mục và tệp chưa tồn tại, bạn sẽ gặp lỗi nếu bạn chạy ứng dụng vào thời điểm này. Tuy nhiên, bạn sẽ điều hành nó để bạn quen thuộc với ngoại lệ thường gặp này. Sau đó, bạn sẽ sửa nó bằng cách tạo thư mục và tệp cần thiết.

Lưu và thoát khỏi tập tin.

Dừng máy chủ phát triển trong thiết bị đầu cuối khác của bạn chạy ứng dụng

40 với
22.

Trước khi bạn chạy ứng dụng, hãy đảm bảo bạn chỉ định chính xác giá trị cho biến môi trường

04, vì bạn không còn sử dụng ứng dụng
40:

5

Mở URL

08 trong trình duyệt của bạn sẽ dẫn đến trang trình gỡ lỗi thông báo cho bạn rằng mẫu
37 không được tìm thấy. Dòng chính trong mã chịu trách nhiệm cho lỗi này sẽ được tô sáng. Trong trường hợp này, nó là dòng
46.

Nếu bạn nhấp vào dòng này, trình gỡ lỗi sẽ tiết lộ nhiều mã hơn để bạn có nhiều bối cảnh hơn để giúp bạn giải quyết vấn đề.

Hướng dẫn how do i connect python to flask in html? - làm cách nào để kết nối python với flask trong html?

Để khắc phục lỗi này, hãy tạo một thư mục gọi là

33 bên trong thư mục
  1. export FLASK_APP=hello
2 của bạn. Sau đó, bên trong nó, mở một tệp có tên
37 để chỉnh sửa:

6

Tiếp theo, thêm mã HTML sau đây

37:

flask_blog/templates/index.html

7

Lưu tệp và sử dụng trình duyệt của bạn để điều hướng đến

08 hoặc làm mới trang. Lần này trình duyệt sẽ hiển thị văn bản
52 trong thẻ
53.

Ngoài thư mục

33, các ứng dụng web Flask cũng thường có thư mục
55 để lưu trữ các tệp tĩnh, chẳng hạn như tệp CSS, tệp JavaScript và hình ảnh mà ứng dụng sử dụng.

Bạn có thể tạo tệp bảng kiểu

56 để thêm CSS vào ứng dụng của bạn. Đầu tiên, hãy tạo một thư mục gọi là
55 bên trong thư mục chính
  1. export FLASK_APP=hello
2 chính của bạn:

8

Sau đó, tạo một thư mục khác được gọi là

59 bên trong thư mục
55 để lưu trữ các tệp
61. Điều này thường được thực hiện để sắp xếp các tệp tĩnh trong các thư mục chuyên dụng, như vậy, các tệp JavaScript thường sống bên trong một thư mục gọi là
62, hình ảnh được đặt trong một thư mục gọi là
63 (hoặc
64), v.v. Lệnh sau đây sẽ tạo thư mục
59 bên trong thư mục
55:

9

Sau đó mở một tệp

56 bên trong thư mục
59 để chỉnh sửa:

  1. pip install flask
0

Thêm quy tắc CSS sau vào tệp

56 của bạn:

flask_blog/static/css/style.css

  1. pip install flask
1

Mã CSS sẽ thêm một đường viền, thay đổi màu thành nâu, giữa văn bản và thêm một chút đệm vào thẻ

53.

Lưu và đóng tập tin.

Tiếp theo, hãy mở tệp mẫu

37 để chỉnh sửa:

  1. pip install flask
2

Bạn sẽ thêm một liên kết vào tệp

56 bên trong phần
73 của tệp mẫu
37:

flask_blog/templates/index.html

  1. pip install flask
3

Tại đây bạn sử dụng chức năng trợ giúp

75 để tạo vị trí thích hợp của tệp. Đối số đầu tiên chỉ định rằng bạn liên kết với một tệp tĩnh và đối số thứ hai là đường dẫn của tệp bên trong thư mục tĩnh.

Lưu và đóng tập tin.

Tiếp theo, hãy mở tệp mẫu

37 để chỉnh sửa:

Bạn sẽ thêm một liên kết vào tệp

56 bên trong phần
73 của tệp mẫu
37:

Tại đây bạn sử dụng chức năng trợ giúp

75 để tạo vị trí thích hợp của tệp. Đối số đầu tiên chỉ định rằng bạn liên kết với một tệp tĩnh và đối số thứ hai là đường dẫn của tệp bên trong thư mục tĩnh.

Khi làm mới trang chỉ mục của ứng dụng của bạn, bạn sẽ nhận thấy rằng văn bản

52 hiện đang ở màu nâu, tập trung và kín bên trong một đường viền.

  1. pip install flask
4

Bạn có thể sử dụng ngôn ngữ CSS để tạo kiểu cho ứng dụng và làm cho nó hấp dẫn hơn khi sử dụng thiết kế của riêng bạn. Tuy nhiên, nếu bạn không phải là nhà thiết kế web hoặc nếu bạn không quen thuộc với CSS, thì bạn có thể sử dụng bộ công cụ Bootstrap, cung cấp các thành phần dễ sử dụng để tạo kiểu cho ứng dụng của bạn. Trong dự án này, chúng tôi sẽ sử dụng bootstrap.

flask_blog/templates/base.html

  1. pip install flask
5

Bạn có thể đoán rằng việc tạo một mẫu HTML khác có nghĩa là lặp lại hầu hết mã HTML mà bạn đã viết trong mẫu

37. Bạn có thể tránh sự lặp lại mã không cần thiết với sự trợ giúp của tệp mẫu cơ sở, tất cả các tệp HTML của bạn sẽ được kế thừa. Xem Kế thừa mẫu trong Jinja để biết thêm thông tin.

Để tạo một mẫu cơ sở, trước tiên hãy tạo một tệp có tên

78 bên trong thư mục
33 của bạn:

Tuy nhiên, các phần được tô sáng sau đây là dành riêng cho công cụ mẫu Jinja:

    84: Một khối đóng vai trò là người giữ chỗ cho một tiêu đề, sau đó bạn sẽ sử dụng nó trong các mẫu khác để cung cấp một tiêu đề tùy chỉnh cho mỗi trang trong ứng dụng của bạn mà không viết lại toàn bộ phần
    73 mỗi lần.
    86: Một cuộc gọi chức năng sẽ trả về URL cho hàm xem
    35. Điều này khác với
    75 trước đây, bạn đã sử dụng để liên kết một tệp CSS tĩnh, bởi vì nó chỉ lấy một đối số, đó là tên Chế độ xem tên và liên kết đến tuyến đường liên quan đến hàm thay vì tệp tĩnh.
    89: Một khối khác sẽ được thay thế bằng nội dung tùy thuộc vào mẫu con (các mẫu kế thừa từ
    78) sẽ ghi đè lên nó.

Bây giờ bạn có một mẫu cơ sở, bạn có thể tận dụng nó bằng cách sử dụng kế thừa. Mở tệp

37:

  1. pip install flask
2

Sau đó thay thế nội dung của nó bằng cách sau:

flask_blog/mplates/index.html

  1. pip install flask
7

Trong phiên bản mới này của mẫu

37, bạn sử dụng thẻ
93 để kế thừa từ mẫu
78. Sau đó, bạn mở rộng nó thông qua việc thay thế khối
95 trong mẫu cơ sở bằng những gì bên trong khối
95 trong khối mã trước.

Khối

95 này chứa thẻ
53 với văn bản
52 bên trong khối
  1. pip install flask
00, lần lượt thay thế khối
  1. pip install flask
00 gốc trong mẫu
78 bằng văn bản
52. Bằng cách này, bạn có thể tránh lặp lại cùng một văn bản hai lần, vì nó hoạt động cả dưới dạng tiêu đề cho trang và một tiêu đề xuất hiện bên dưới thanh điều hướng được kế thừa từ mẫu cơ sở.

Kế thừa mẫu cũng cung cấp cho bạn khả năng sử dụng lại mã HTML mà bạn có trong các mẫu khác (

78 trong trường hợp này) mà không phải lặp lại mỗi lần cần thiết.

Lưu và đóng tệp và làm mới trang chỉ mục trên trình duyệt của bạn. Bạn sẽ thấy trang của bạn với một thanh điều hướng và tiêu đề kiểu dáng.

Hướng dẫn how do i connect python to flask in html? - làm cách nào để kết nối python với flask trong html?

Bạn đã sử dụng các mẫu HTML và các tệp tĩnh trong bình. Bạn cũng đã sử dụng Bootstrap để bắt đầu tinh chỉnh giao diện của trang của bạn và một mẫu cơ sở để tránh sự lặp lại mã. Trong bước tiếp theo, bạn sẽ thiết lập một cơ sở dữ liệu sẽ lưu trữ dữ liệu ứng dụng của bạn.

Bước 4 - Thiết lập cơ sở dữ liệu

Trong bước này, bạn sẽ thiết lập một cơ sở dữ liệu để lưu trữ dữ liệu, nghĩa là các bài đăng trên blog cho ứng dụng của bạn. Bạn cũng sẽ điền vào cơ sở dữ liệu với một vài mục ví dụ.

Bạn sẽ sử dụng tệp cơ sở dữ liệu SQLite để lưu trữ dữ liệu của mình vì mô -đun

  1. pip install flask
05 mà chúng tôi sẽ sử dụng để tương tác với cơ sở dữ liệu, có sẵn trong thư viện Python tiêu chuẩn. Để biết thêm thông tin về SQLite, hãy xem hướng dẫn này.

Đầu tiên, vì dữ liệu trong SQLite được lưu trữ trong các bảng và cột và vì dữ liệu của bạn chủ yếu bao gồm các bài đăng trên blog, trước tiên bạn cần tạo một bảng có tên

  1. pip install flask
06 với các cột cần thiết. Bạn sẽ tạo một tệp
  1. pip install flask
07 chứa các lệnh SQL để tạo bảng
  1. pip install flask
06 với một vài cột. Sau đó, bạn sẽ sử dụng tệp này để tạo cơ sở dữ liệu.

Mở một tệp có tên

  1. pip install flask
09 bên trong thư mục
  1. export FLASK_APP=hello
2 của bạn:

  1. pip install flask
8

Nhập các lệnh SQL sau đây bên trong tệp này:

flask_blog/schema.sql

  1. pip install flask
9

Lưu và đóng tập tin.

Lệnh SQL đầu tiên là

  1. pip install flask
11, điều này xóa bất kỳ bảng hiện có nào có tên
  1. pip install flask
06 để bạn không nhận được hành vi khó hiểu. Lưu ý rằng điều này sẽ xóa tất cả nội dung bạn có trong cơ sở dữ liệu bất cứ khi nào bạn sử dụng các lệnh SQL này, vì vậy hãy đảm bảo bạn không viết bất kỳ nội dung quan trọng nào trong ứng dụng web cho đến khi bạn hoàn thành hướng dẫn này và thử nghiệm kết quả cuối cùng. Tiếp theo,
  1. pip install flask
13 được sử dụng để tạo bảng
  1. pip install flask
06 với các cột sau:

    1. pip install flask
    15: Một số nguyên đại diện cho khóa chính, điều này sẽ được gán một giá trị duy nhất bởi cơ sở dữ liệu cho mỗi mục (đó là một bài đăng trên blog).
    1. pip install flask
    16: Thời gian bài đăng trên blog được tạo tại.
    1. pip install flask
    17 biểu thị rằng cột này không nên trống và giá trị
    1. pip install flask
    18 là giá trị
    1. pip install flask
    19, đó là thời gian mà bài đăng được thêm vào cơ sở dữ liệu. Giống như
    1. pip install flask
    15, bạn không cần chỉ định giá trị cho cột này, vì nó sẽ được điền tự động.
    1. pip install flask
    00: Tiêu đề bài viết.
    95: Nội dung bài viết.

Bây giờ bạn có lược đồ SQL trong tệp

  1. pip install flask
09, bạn sẽ sử dụng nó để tạo cơ sở dữ liệu bằng tệp Python sẽ tạo tệp cơ sở dữ liệu SQLite
  1. pip install flask
24. Mở một tệp có tên
  1. pip install flask
25 bên trong thư mục
  1. export FLASK_APP=hello
2 bằng trình soạn thảo ưa thích của bạn:

  1. python -c "import flask; print(flask.__version__)"
0

Và sau đó thêm mã sau.

flask_blog/init_db.py

  1. python -c "import flask; print(flask.__version__)"
1

Trước tiên, bạn nhập mô -đun

  1. pip install flask
05 và sau đó mở kết nối vào tệp cơ sở dữ liệu có tên
  1. pip install flask
28, sẽ được tạo khi bạn chạy tệp Python. Sau đó, bạn sử dụng chức năng
  1. pip install flask
29 để mở tệp
  1. pip install flask
09. Tiếp theo, bạn thực hiện nội dung của nó bằng phương thức
  1. pip install flask
31 thực thi nhiều câu lệnh SQL cùng một lúc, sẽ tạo bảng
  1. pip install flask
06. Bạn tạo một đối tượng con trỏ cho phép bạn sử dụng phương thức
  1. pip install flask
33 của nó để thực thi hai câu lệnh SQL
  1. pip install flask
34 để thêm hai bài đăng trên blog vào bảng
  1. pip install flask
06 của bạn. Cuối cùng, bạn cam kết các thay đổi và đóng kết nối.

Lưu và đóng tệp và sau đó chạy nó trong thiết bị đầu cuối bằng lệnh

  1. export FLASK_ENV=development
0:

  1. python -c "import flask; print(flask.__version__)"
2

Khi tệp hoàn thành thực thi, một tệp mới có tên

  1. pip install flask
28 sẽ xuất hiện trong thư mục
  1. export FLASK_APP=hello
2 của bạn. Điều này có nghĩa là bạn đã thiết lập thành công cơ sở dữ liệu của mình.

Trong bước tiếp theo, bạn sẽ truy xuất các bài đăng bạn đã chèn vào cơ sở dữ liệu của mình và hiển thị chúng trong trang chủ ứng dụng của bạn.

Bước 5 - Hiển thị tất cả các bài viết

Bây giờ bạn đã thiết lập cơ sở dữ liệu của mình, giờ đây bạn có thể sửa đổi chức năng xem

35 để hiển thị tất cả các bài đăng bạn có trong cơ sở dữ liệu của mình.

Mở tệp

30 để thực hiện các sửa đổi sau:

3

Để sửa đổi đầu tiên, bạn sẽ nhập mô -đun

  1. pip install flask
05 ở đầu tệp:

flask_blog/app.py

  1. python -c "import flask; print(flask.__version__)"
4

Tiếp theo, bạn sẽ tạo một chức năng tạo kết nối cơ sở dữ liệu và trả về nó. Thêm nó trực tiếp sau khi nhập khẩu:

flask_blog/app.py

  1. python -c "import flask; print(flask.__version__)"
5

Hàm

  1. pip install flask
42 này mở kết nối với tệp cơ sở dữ liệu
  1. pip install flask
28 và sau đó đặt thuộc tính
  1. pip install flask
44 thành
  1. pip install flask
45 để bạn có thể có quyền truy cập dựa trên tên vào các cột. Điều này có nghĩa là kết nối cơ sở dữ liệu sẽ trả về các hàng hoạt động như từ điển Python thông thường. Cuối cùng, hàm trả về đối tượng kết nối
  1. pip install flask
46 mà bạn sẽ sử dụng để truy cập cơ sở dữ liệu.

Sau khi xác định hàm

  1. pip install flask
42, hãy sửa đổi hàm
35 để trông giống như sau:

flask_blog/app.py

  1. python -c "import flask; print(flask.__version__)"
6

Trong phiên bản mới này của hàm

35, trước tiên bạn mở kết nối cơ sở dữ liệu bằng hàm
  1. pip install flask
42 mà bạn đã xác định trước đó. Sau đó, bạn thực hiện truy vấn SQL để chọn tất cả các mục từ bảng
  1. pip install flask
06. Bạn thực hiện phương thức
  1. pip install flask
52 để tìm nạp tất cả các hàng của kết quả truy vấn, điều này sẽ trả về danh sách các bài đăng bạn đã chèn vào cơ sở dữ liệu trong bước trước.

Bạn đóng kết nối cơ sở dữ liệu bằng phương thức

  1. pip install flask
53 và trả về kết quả hiển thị mẫu
37. Bạn cũng vượt qua đối tượng
  1. pip install flask
06 dưới dạng đối số, chứa kết quả bạn nhận được từ cơ sở dữ liệu, điều này sẽ cho phép bạn truy cập các bài đăng trên blog trong mẫu
37.

Với các sửa đổi này, lưu và đóng tệp

30.

Bây giờ, bạn đã chuyển các bài đăng mà bạn đã tìm nạp từ cơ sở dữ liệu sang mẫu

37, bạn có thể sử dụng vòng lặp
  1. pip install flask
59 để hiển thị mỗi bài đăng trên trang chỉ mục của bạn.

Mở tệp

37:

  1. pip install flask
2

Sau đó, sửa đổi nó để xem như sau:

flask_blog/templates/index.html

  1. python -c "import flask; print(flask.__version__)"
8

Ở đây, cú pháp

  1. pip install flask
61 là vòng lặp Jinja
  1. pip install flask
59, tương tự như vòng lặp Python
  1. pip install flask
59 ngoại trừ sau đó nó phải được đóng lại với cú pháp
  1. pip install flask
64. Bạn sử dụng cú pháp này để lặp qua từng mục trong danh sách
  1. pip install flask
06 được truyền bởi hàm
35 trong dòng
  1. pip install flask
67. Bên trong vòng
  1. pip install flask
59 này, bạn hiển thị tiêu đề bài đăng trong một
53 hướng vào bên trong thẻ
  1. pip install flask
70 (sau đó bạn sẽ sử dụng thẻ này để liên kết với mỗi bài viết riêng lẻ).

Bạn hiển thị tiêu đề bằng cách phân cách biến theo nghĩa đen (

  1. pip install flask
71). Hãy nhớ rằng
  1. pip install flask
72 sẽ là một đối tượng giống như từ điển, vì vậy bạn có thể truy cập vào tiêu đề bài viết với
  1. pip install flask
73. Bạn cũng hiển thị ngày tạo bài bằng cách sử dụng cùng một phương thức.

Khi bạn đã hoàn thành chỉnh sửa tệp, lưu và đóng nó. Sau đó điều hướng đến trang chỉ mục trong trình duyệt của bạn. Bạn sẽ thấy hai bài đăng bạn đã thêm vào cơ sở dữ liệu trên trang của mình.

Hướng dẫn how do i connect python to flask in html? - làm cách nào để kết nối python với flask trong html?

Bây giờ, bạn đã sửa đổi chức năng xem

35 để hiển thị tất cả các bài đăng bạn có trong cơ sở dữ liệu trên trang chủ ứng dụng của bạn, bạn sẽ chuyển sang hiển thị mỗi bài đăng trong một trang duy nhất và cho phép người dùng liên kết với từng bài đăng riêng lẻ.

Bước 6 - Hiển thị một bài đăng

Trong bước này, bạn sẽ tạo một tuyến bình mới với chức năng xem và mẫu HTML mới để hiển thị một bài đăng trên blog riêng lẻ bằng ID của nó.

Vào cuối bước này, URL

  1. pip install flask
75 sẽ là một trang hiển thị bài đăng đầu tiên (vì nó có ID
  1. pip install flask
76). URL
  1. pip install flask
77 sẽ hiển thị bài đăng với số
  1. pip install flask
78 được liên kết nếu nó tồn tại.

Mở

30 để chỉnh sửa:

3

Vì bạn sẽ cần nhận được một bài đăng trên blog bằng ID của nó từ cơ sở dữ liệu ở nhiều vị trí sau trong dự án này, bạn sẽ tạo ra một chức năng độc lập có tên là

  1. pip install flask
80. Bạn có thể gọi nó bằng cách chuyển nó một ID và nhận lại bài đăng trên blog được liên kết với ID được cung cấp hoặc làm cho Flask trả lời bằng tin nhắn
  1. pip install flask
81 nếu bài đăng trên blog không tồn tại.

Để trả lời với trang

  1. pip install flask
82, bạn cần nhập chức năng
  1. pip install flask
83 từ thư viện
  1. pip install flask
84, được cài đặt cùng với bình, ở đầu tệp:

flask_blog/app.py

Output

1.1.2
0

Sau đó, thêm hàm

  1. pip install flask
80 ngay sau hàm
  1. pip install flask
42 bạn đã tạo ở bước trước:

flask_blog/app.py

Output

1.1.2
1

Chức năng mới này có một đối số

  1. pip install flask
87 xác định bài đăng trên blog nào sẽ trả về.

Bên trong chức năng, bạn sử dụng hàm

  1. pip install flask
42 để mở kết nối cơ sở dữ liệu và thực hiện truy vấn SQL để nhận bài đăng trên blog được liên kết với giá trị
  1. pip install flask
87 đã cho. Bạn thêm phương thức
  1. pip install flask
90 để lấy kết quả và lưu trữ nó trong biến
  1. pip install flask
72 sau đó đóng kết nối. Nếu biến
  1. pip install flask
72 có giá trị
  1. pip install flask
93, có nghĩa là không có kết quả nào được tìm thấy trong cơ sở dữ liệu, bạn sẽ sử dụng hàm
  1. pip install flask
83 bạn đã nhập trước đó để trả lời mã lỗi
  1. pip install flask
82 và chức năng sẽ hoàn thành thực thi. Tuy nhiên, nếu một bài đăng đã được tìm thấy, bạn trả về giá trị của biến
  1. pip install flask
72.

Tiếp theo, thêm chức năng chế độ xem sau ở cuối tệp

30:

flask_blog/app.py

Output

1.1.2
2

Trong hàm chế độ xem mới này, bạn thêm một quy tắc biến

  1. pip install flask
98 để chỉ định rằng phần sau khi cắt (
00) là một số nguyên dương (được đánh dấu bằng bộ chuyển đổi
  1. python -c "import flask; print(flask.__version__)"
00) mà bạn cần truy cập trong hàm chế độ xem của mình. Flask nhận ra điều này và chuyển giá trị của nó cho đối số từ khóa
  1. pip install flask
87 của hàm xem
  1. python -c "import flask; print(flask.__version__)"
02 của bạn. Sau đó, bạn sử dụng chức năng
  1. pip install flask
80 để nhận bài đăng trên blog được liên kết với ID được chỉ định và lưu trữ kết quả trong biến
  1. pip install flask
72 mà bạn chuyển đến mẫu
  1. python -c "import flask; print(flask.__version__)"
05 mà bạn sẽ sớm tạo.

Lưu tệp

30 và mở tệp mẫu
  1. python -c "import flask; print(flask.__version__)"
05 mới để chỉnh sửa:

Output

1.1.2
3

Nhập mã sau trong tệp

  1. python -c "import flask; print(flask.__version__)"
05 mới này. Điều này sẽ tương tự như tệp
37, ngoại trừ việc nó sẽ chỉ hiển thị một bài đăng duy nhất, ngoài ra còn hiển thị nội dung của bài đăng:

flask_blog/templates/post.html

Output

1.1.2
4

Bạn thêm khối

  1. pip install flask
00 mà bạn đã xác định trong mẫu
78 để làm cho tiêu đề của trang phản ánh tiêu đề bài đăng được hiển thị trong tiêu đề
53 cùng một lúc.

Lưu và đóng tập tin.

Bây giờ bạn có thể điều hướng đến các URL sau để xem hai bài đăng bạn có trong cơ sở dữ liệu của mình, cùng với một trang cho người dùng biết rằng bài đăng trên blog được yêu cầu không được tìm thấy (vì không có bài đăng nào có số ID là

  1. python -c "import flask; print(flask.__version__)"
13 cho đến nay) :

Output

1.1.2
5

Quay trở lại trang Index, bạn sẽ tạo mỗi liên kết tiêu đề bài đăng đến trang tương ứng của nó. Bạn sẽ làm điều này bằng cách sử dụng chức năng

75. Đầu tiên, hãy mở mẫu
37 để chỉnh sửa:

  1. pip install flask
2

Sau đó thay đổi giá trị của thuộc tính

  1. python -c "import flask; print(flask.__version__)"
16 từ
  1. python -c "import flask; print(flask.__version__)"
17 thành
  1. python -c "import flask; print(flask.__version__)"
18 để vòng lặp
  1. pip install flask
59 sẽ trông chính xác như sau:

flask_blog/templates/index.html

Output

1.1.2
7

Tại đây, bạn chuyển

  1. python -c "import flask; print(flask.__version__)"
20 cho hàm
75 như một đối số đầu tiên. Đây là tên của hàm xem
  1. python -c "import flask; print(flask.__version__)"
02 và vì nó chấp nhận đối số
  1. pip install flask
87, bạn cho nó giá trị
  1. python -c "import flask; print(flask.__version__)"
24. Hàm
75 sẽ trả về URL thích hợp cho mỗi bài đăng dựa trên ID của nó.

Lưu và đóng tập tin.

Bây giờ bạn có thể điều hướng đến các URL sau để xem hai bài đăng bạn có trong cơ sở dữ liệu của mình, cùng với một trang cho người dùng biết rằng bài đăng trên blog được yêu cầu không được tìm thấy (vì không có bài đăng nào có số ID là

  1. python -c "import flask; print(flask.__version__)"
13 cho đến nay) :

Quay trở lại trang Index, bạn sẽ tạo mỗi liên kết tiêu đề bài đăng đến trang tương ứng của nó. Bạn sẽ làm điều này bằng cách sử dụng chức năng 75. Đầu tiên, hãy mở mẫu 37 để chỉnh sửa:

Sau đó thay đổi giá trị của thuộc tính

  1. python -c "import flask; print(flask.__version__)"
16 từ
  1. python -c "import flask; print(flask.__version__)"
17 thành
  1. python -c "import flask; print(flask.__version__)"
18 để vòng lặp
  1. pip install flask
59 sẽ trông chính xác như sau:

Tại đây, bạn chuyển python -c "import flask; print(flask.__version__)" 20 cho hàm 75 như một đối số đầu tiên. Đây là tên của hàm xem python -c "import flask; print(flask.__version__)" 02 và vì nó chấp nhận đối số pip install flask 87, bạn cho nó giá trị python -c "import flask; print(flask.__version__)" 24. Hàm 75 sẽ trả về URL thích hợp cho mỗi bài đăng dựa trên ID của nó.

Các liên kết trên trang chỉ mục bây giờ sẽ hoạt động như mong đợi. Với điều này, bây giờ bạn đã hoàn thành việc xây dựng một phần của ứng dụng chịu trách nhiệm hiển thị các bài đăng trên blog trong cơ sở dữ liệu của bạn. Tiếp theo, bạn sẽ thêm khả năng tạo, chỉnh sửa và xóa các bài đăng trên blog vào ứng dụng của bạn.

Bước 7 - Sửa đổi bài viết

3

Bây giờ bạn đã hoàn thành việc hiển thị các bài đăng trên blog có trong cơ sở dữ liệu trên ứng dụng web, bạn cần cho phép người dùng ứng dụng của mình viết các bài đăng trên blog mới và thêm chúng vào cơ sở dữ liệu, chỉnh sửa các bài đăng hiện có và xóa không cần thiết bài đăng trên blog.

  • Đối tượng toàn cầu ____327 để truy cập dữ liệu yêu cầu đến sẽ được gửi qua biểu mẫu HTML.
  • Hàm
    75 để tạo URL.
  • Hàm
    1. python -c "import flask; print(flask.__version__)"
    29 để flash một thông báo khi yêu cầu được xử lý.
  • Hàm
    1. python -c "import flask; print(flask.__version__)"
    30 để chuyển hướng máy khách đến một vị trí khác.

Thêm nhập vào tệp của bạn như sau:

flask_blog/app.py

Output

1.1.2
9

Các lưu trữ chức năng

  1. python -c "import flask; print(flask.__version__)"
29 đã nhấp nháy các tin nhắn trong phiên trình duyệt của máy khách, yêu cầu đặt khóa bí mật. Khóa bí mật này được sử dụng để bảo mật các phiên, cho phép Bình ghi nhớ thông tin từ yêu cầu này sang yêu cầu khác, chẳng hạn như chuyển từ trang bài đăng mới sang trang chỉ mục. Người dùng có thể truy cập thông tin được lưu trữ trong phiên, nhưng không thể sửa đổi nó trừ khi họ có khóa bí mật, vì vậy bạn không bao giờ được cho phép bất cứ ai truy cập khóa bí mật của bạn. Xem tài liệu Flask cho các phiên để biết thêm thông tin.

Để đặt khóa bí mật, bạn sẽ thêm cấu hình

  1. python -c "import flask; print(flask.__version__)"
32 vào ứng dụng của mình thông qua đối tượng
  1. python -c "import flask; print(flask.__version__)"
33. Thêm trực tiếp theo định nghĩa
  1. flask run
4 trước khi xác định chức năng xem
35:

flask_blog/app.py

  1. nano hello.py
0

Hãy nhớ rằng khóa bí mật phải là một chuỗi ngẫu nhiên dài.

Sau khi đặt khóa bí mật, bạn sẽ tạo chức năng xem sẽ hiển thị một mẫu hiển thị biểu mẫu bạn có thể điền vào để tạo một bài đăng trên blog mới. Thêm chức năng mới này ở dưới cùng của tệp:

flask_blog/app.py

  1. nano hello.py
1

Điều này tạo ra một tuyến đường

  1. python -c "import flask; print(flask.__version__)"
36 chấp nhận cả yêu cầu GET và POST. Nhận yêu cầu được chấp nhận theo mặc định. Để chấp nhận các yêu cầu POST, được gửi bởi trình duyệt khi gửi biểu mẫu, bạn sẽ chuyển một tuple với các loại yêu cầu được chấp nhận cho đối số
  1. python -c "import flask; print(flask.__version__)"
37 của trình trang trí
  1. flask run
9.

Lưu và đóng tập tin.

Để tạo mẫu, hãy mở một tệp có tên

  1. python -c "import flask; print(flask.__version__)"
39 bên trong thư mục
33 của bạn:

  1. nano hello.py
2

Thêm mã sau bên trong tệp mới này:

flask_blog/templates/create.html

  1. nano hello.py
3

Hầu hết các mã này là HTML tiêu chuẩn. Nó sẽ hiển thị một hộp đầu vào cho tiêu đề bài đăng, một vùng văn bản cho nội dung bài đăng và một nút để gửi biểu mẫu.

Giá trị của đầu vào tiêu đề bài đăng là

  1. python -c "import flask; print(flask.__version__)"
41 và khu vực văn bản có giá trị
  1. python -c "import flask; print(flask.__version__)"
42, điều này được thực hiện để dữ liệu bạn nhập không bị mất nếu có sự cố. Ví dụ: nếu bạn viết một bài viết dài và bạn quên cung cấp cho nó một tiêu đề, một tin nhắn sẽ được hiển thị thông báo cho bạn rằng tiêu đề là bắt buộc. Điều này sẽ xảy ra mà không mất bài đăng bạn đã viết vì nó sẽ được lưu trữ trong đối tượng toàn cầu
  1. python -c "import flask; print(flask.__version__)"
27 mà bạn có quyền truy cập trong các mẫu của mình.

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

  1. python -c "import flask; print(flask.__version__)"
36:

  1. nano hello.py
4

Bạn sẽ thấy một trang tạo một bài đăng mới với một hộp cho một tiêu đề và nội dung.Create a New Post page with a box for a title and content.

Hướng dẫn how do i connect python to flask in html? - làm cách nào để kết nối python với flask trong html?

Biểu mẫu này gửi một yêu cầu bài đăng cho chức năng xem

  1. python -c "import flask; print(flask.__version__)"
45 của bạn. Tuy nhiên, không có mã nào để xử lý một yêu cầu POST trong hàm, vì vậy chưa có gì xảy ra sau khi điền vào biểu mẫu và gửi nó.

Bạn sẽ xử lý yêu cầu bài đăng đến khi một biểu mẫu được gửi. Bạn sẽ làm điều này bên trong chức năng xem

  1. python -c "import flask; print(flask.__version__)"
45. Bạn có thể xử lý riêng yêu cầu POST bằng cách kiểm tra giá trị của
  1. python -c "import flask; print(flask.__version__)"
47. Khi giá trị của nó được đặt thành
  1. python -c "import flask; print(flask.__version__)"
48, điều đó có nghĩa là yêu cầu là yêu cầu POST, sau đó bạn sẽ tiến hành trích xuất dữ liệu đã gửi, xác thực và chèn nó vào cơ sở dữ liệu của bạn.

Mở tệp

30 để chỉnh sửa:

3

Sửa đổi chức năng xem

  1. python -c "import flask; print(flask.__version__)"
45 để xem chính xác như sau:

flask_blog/app.py

  1. nano hello.py
6

Trong câu lệnh

  1. python -c "import flask; print(flask.__version__)"
51, bạn đảm bảo rằng mã sau đó chỉ được thực thi khi yêu cầu là yêu cầu POST thông qua so sánh
  1. python -c "import flask; print(flask.__version__)"
52.

Sau đó, bạn trích xuất tiêu đề và nội dung đã gửi từ đối tượng

  1. python -c "import flask; print(flask.__version__)"
53 cho phép bạn truy cập vào dữ liệu biểu mẫu trong yêu cầu. Nếu tiêu đề không được cung cấp, điều kiện
  1. python -c "import flask; print(flask.__version__)"
54 sẽ được thực hiện, hiển thị thông báo cho người dùng thông báo cho họ rằng tiêu đề là bắt buộc. Mặt khác, nếu tiêu đề được cung cấp, bạn mở kết nối với hàm
  1. pip install flask
42 và chèn tiêu đề và nội dung bạn nhận được vào bảng
  1. pip install flask
06.

Sau đó, bạn cam kết các thay đổi cho cơ sở dữ liệu và đóng kết nối. Sau khi thêm bài đăng trên blog vào cơ sở dữ liệu, bạn chuyển hướng máy khách đến trang chỉ mục bằng hàm

  1. python -c "import flask; print(flask.__version__)"
30 chuyển URL được tạo bởi hàm
75 với giá trị
  1. python -c "import flask; print(flask.__version__)"
59 làm đối số.

Lưu và đóng tập tin.

Để tạo mẫu, hãy mở một tệp có tên

  1. python -c "import flask; print(flask.__version__)"
39 bên trong thư mục
33 của bạn:

  1. nano hello.py
4

  1. nano hello.py
2

Cuối cùng, bạn sẽ hiển thị các tin nhắn đã nhấp nháy và thêm một liên kết vào thanh điều hướng trong mẫu

78 để dễ dàng truy cập vào trang mới này. Mở tệp mẫu:

  1. pip install flask
4

Chỉnh sửa tệp bằng cách thêm thẻ

  1. python -c "import flask; print(flask.__version__)"
62 mới theo liên kết
  1. python -c "import flask; print(flask.__version__)"
63 bên trong thẻ
  1. python -c "import flask; print(flask.__version__)"
64. Sau đó thêm một vòng
  1. pip install flask
59 mới ngay phía trên khối
95 để hiển thị các thông báo flash bên dưới thanh điều hướng. Các thông báo này có sẵn trong bình chức năng
  1. python -c "import flask; print(flask.__version__)"
67 đặc biệt cung cấp:

flask_blog/mẫu/base.html

  1. nano hello.py
9

Lưu và đóng tập tin. Thanh điều hướng hiện sẽ có một mục

  1. python -c "import flask; print(flask.__version__)"
68 liên kết đến tuyến đường
  1. python -c "import flask; print(flask.__version__)"
36.

Chỉnh sửa một bài

Để một blog được cập nhật, bạn sẽ cần có khả năng chỉnh sửa các bài đăng hiện có của mình. Phần này sẽ hướng dẫn bạn thông qua việc tạo một trang mới trong ứng dụng của bạn để đơn giản hóa quá trình chỉnh sửa một bài đăng.

Đầu tiên, bạn sẽ thêm một tuyến đường mới vào tệp

30. Hàm xem của nó sẽ nhận được ID của bài đăng cần được chỉnh sửa, URL sẽ ở định dạng
  1. python -c "import flask; print(flask.__version__)"
71 với biến
  1. pip install flask
87 là ID của bài đăng. Mở tệp
30 để chỉnh sửa:

3

Tiếp theo, thêm chức năng xem

  1. python -c "import flask; print(flask.__version__)"
74 sau ở cuối tệp. Chỉnh sửa một bài đăng hiện có tương tự như tạo một bài mới, vì vậy chức năng chế độ xem này sẽ tương tự như hàm xem
  1. python -c "import flask; print(flask.__version__)"
45:

flask_blog/app.py

from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello():
    return 'Hello, World!'
1

Bài đăng bạn chỉnh sửa được xác định bởi URL và bình sẽ chuyển số ID cho hàm

  1. python -c "import flask; print(flask.__version__)"
74 thông qua đối số
  1. pip install flask
15. Bạn thêm giá trị này vào hàm
  1. pip install flask
80 để tìm nạp bài liên kết với ID được cung cấp từ cơ sở dữ liệu. Dữ liệu mới sẽ đến trong một yêu cầu POST, được xử lý bên trong điều kiện
  1. python -c "import flask; print(flask.__version__)"
79.

Giống như khi bạn tạo một bài đăng mới, trước tiên bạn trích xuất dữ liệu từ đối tượng

  1. python -c "import flask; print(flask.__version__)"
53 sau đó flash một thông báo nếu tiêu đề có giá trị trống, nếu không, bạn sẽ mở kết nối cơ sở dữ liệu. Sau đó, bạn cập nhật bảng
  1. pip install flask
06 bằng cách đặt một tiêu đề mới và nội dung mới trong đó ID của bài đăng trong cơ sở dữ liệu bằng với ID có trong URL.

Trong trường hợp yêu cầu GET, bạn hiển thị mẫu

  1. python -c "import flask; print(flask.__version__)"
82 được chuyển trong biến
  1. pip install flask
72 giữ giá trị trả về của hàm
  1. pip install flask
80. Bạn sẽ sử dụng điều này để hiển thị tiêu đề và nội dung hiện có trên trang Chỉnh sửa.

Lưu và đóng tệp, sau đó tạo mẫu

  1. python -c "import flask; print(flask.__version__)"
82 mới:

from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello():
    return 'Hello, World!'
2

Viết mã sau bên trong tệp mới này:

flask_blog/templates/edit.html

from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello():
    return 'Hello, World!'
3

Lưu và đóng tập tin.

Mã này tuân theo cùng một mẫu ngoại trừ cú pháp

  1. python -c "import flask; print(flask.__version__)"
86 và
  1. python -c "import flask; print(flask.__version__)"
87. Điều này hiển thị dữ liệu được lưu trữ trong yêu cầu nếu nó tồn tại, nếu không, nó sẽ hiển thị dữ liệu từ biến
  1. pip install flask
72 được chuyển đến mẫu chứa dữ liệu cơ sở dữ liệu hiện tại.

Bây giờ, điều hướng đến URL sau để chỉnh sửa bài viết đầu tiên:

from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello():
    return 'Hello, World!'
4

Bạn sẽ thấy một trang Chỉnh sửa bài đăng đầu tiên.Edit “First Post” page.

Hướng dẫn how do i connect python to flask in html? - làm cách nào để kết nối python với flask trong html?

Chỉnh sửa bài đăng và gửi biểu mẫu, sau đó đảm bảo bài đăng đã được cập nhật.

Bây giờ bạn cần thêm một liên kết chỉ vào trang Chỉnh sửa cho mỗi bài đăng trên trang Index. Mở tệp mẫu

37:

  1. pip install flask
2

Chỉnh sửa tệp để trông giống hệt như sau:

flask_blog/templates/index.html

from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello():
    return 'Hello, World!'
6

Lưu và đóng tập tin.

Mã này tuân theo cùng một mẫu ngoại trừ cú pháp

  1. python -c "import flask; print(flask.__version__)"
86 và
  1. python -c "import flask; print(flask.__version__)"
87. Điều này hiển thị dữ liệu được lưu trữ trong yêu cầu nếu nó tồn tại, nếu không, nó sẽ hiển thị dữ liệu từ biến
  1. pip install flask
72 được chuyển đến mẫu chứa dữ liệu cơ sở dữ liệu hiện tại.

Bây giờ, điều hướng đến URL sau để chỉnh sửa bài viết đầu tiên:

Bạn sẽ thấy một trang Chỉnh sửa bài đăng đầu tiên.

Chỉnh sửa bài đăng và gửi biểu mẫu, sau đó đảm bảo bài đăng đã được cập nhật.

3

Bây giờ bạn cần thêm một liên kết chỉ vào trang Chỉnh sửa cho mỗi bài đăng trên trang Index. Mở tệp mẫu

37:

flask_blog/app.py

from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello():
    return 'Hello, World!'
8

Chỉnh sửa tệp để trông giống hệt như sau:

Tại đây bạn thêm thẻ

  1. pip install flask
70 vào liên kết đến hàm xem
  1. python -c "import flask; print(flask.__version__)"
74, chuyển trong giá trị
  1. python -c "import flask; print(flask.__version__)"
24 để liên kết đến trang chỉnh sửa của mỗi bài đăng với liên kết
  1. python -c "import flask; print(flask.__version__)"
93.

Xóa một bài

Lưu ý rằng bạn không hiển thị một tệp mẫu, điều này là do bạn sẽ chỉ thêm nút

Output

1.1.2
01 vào trang Chỉnh sửa.

Mở tệp mẫu

  1. python -c "import flask; print(flask.__version__)"
82:

from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello():
    return 'Hello, World!'
2

Sau đó thêm thẻ

Output

1.1.2
03 sau sau thẻ

Output

1.1.2
04 và trực tiếp trước dòng

Output

1.1.2
05:

flask_blog/templates/edit.html

  1. export FLASK_APP=hello
0

Bạn sử dụng phương thức

Output

1.1.2
06 để hiển thị thông báo xác nhận trước khi gửi yêu cầu.

Bây giờ điều hướng một lần nữa đến trang chỉnh sửa của một bài đăng trên blog và thử xóa nó:

from flask import Flask

app = Flask(__name__)


@app.route('/')
def hello():
    return 'Hello, World!'
4

Vào cuối bước này, mã nguồn của dự án của bạn sẽ trông giống như mã trên trang này.

Với điều này, người dùng ứng dụng của bạn hiện có thể viết các bài đăng trên blog mới và thêm chúng vào cơ sở dữ liệu, chỉnh sửa và xóa các bài đăng hiện có.

Sự kết luận

Hướng dẫn này đã giới thiệu các khái niệm thiết yếu của khung Python Flask. Bạn đã học cách tạo một ứng dụng web nhỏ, chạy nó trong một máy chủ phát triển và cho phép người dùng cung cấp dữ liệu tùy chỉnh thông qua các tham số URL và biểu mẫu web. Bạn cũng đã sử dụng công cụ mẫu Jinja để sử dụng lại các tệp HTML và sử dụng logic trong chúng. Khi kết thúc hướng dẫn này, giờ đây bạn có một blog web hoạt động đầy đủ tương tác với cơ sở dữ liệu SQLite để tạo, hiển thị, chỉnh sửa và xóa các bài đăng trên blog bằng cách sử dụng các truy vấn Python Language và SQL. Nếu bạn muốn tìm hiểu thêm về việc làm việc với Flask và SQLite, hãy xem hướng dẫn này về cách sử dụng mối quan hệ cơ sở dữ liệu một-nhiều với Flask và SQLite.

Bạn có thể phát triển thêm ứng dụng này bằng cách thêm xác thực người dùng để chỉ người dùng đã đăng ký mới có thể tạo và sửa đổi bài đăng trên blog, bạn cũng có thể thêm nhận xét và thẻ cho mỗi bài đăng trên blog và thêm tải lên tệp để cung cấp cho người dùng khả năng đưa hình ảnh vào bài đăng. Xem tài liệu bình để biết thêm thông tin.

Bình có nhiều phần mở rộng bình sản xuất cộng đồng. Sau đây là danh sách các tiện ích mở rộng mà bạn có thể cân nhắc sử dụng để làm cho quá trình phát triển của mình dễ dàng hơn:

  • Flask-Login: Quản lý phiên người dùng và xử lý việc đăng nhập và đăng xuất và ghi nhớ người dùng đã đăng nhập.
  • Flask-Sqlalchemy: Đơn giản hóa bằng cách sử dụng Flask với SQLalchemy, bộ công cụ SQL Python và Bản đồ quan hệ đối tượng để tương tác với cơ sở dữ liệu SQL.
  • Flask-Mail: Giúp nhiệm vụ gửi tin nhắn email trong ứng dụng bình của bạn.

Làm cách nào để kết nối bình python và html?

Tạo một trang HTML đơn giản để hiển thị văn bản. Tạo một tuyến đường/và trở về nhà. create a route ”/” and return home. html from the function. Then run your api.py file and click on the link that it provides after running.

Làm cách nào để gửi dữ liệu từ Python đến bình HTML?

Từ bình Nhập bình, Render_Template, Yêu cầu ..
@app.route('/').
Sinh viên def ():.
trả về render_template ('student.html').
@app.Route ('/result', setree = ['post', 'get']).
Kết quả def ():.
Nếu request.method == 'Post':.
return render_template ("result.html", result = result).

Làm cách nào để kết nối mã Python với HTML?

Làm thế nào để có được URL mẫu tệp HTML trong Python..
Gọi chức năng đọc trên biến Weburl ..
Biến đọc cho phép đọc nội dung của các tệp dữ liệu ..
Đọc toàn bộ nội dung của URL thành một biến có tên là Dữ liệu ..
Chạy mã- nó sẽ in dữ liệu vào định dạng HTML ..

Làm cách nào để lấy dữ liệu từ bình sang HTML?

request.form.get (Hồi fname trực tuyến) sẽ nhận đầu vào từ giá trị đầu vào có thuộc tính tên là fname và lưu trữ trong biến First_name ..
request.form.get (trên mạng lname) sẽ nhận đầu vào từ giá trị đầu vào có thuộc tính tên là lname và lưu trữ trong biến last_name ..