Làm thế nào để bạn chuyển một giá trị từ html sang bình python?

Trong hướng dẫn này, chúng ta sẽ xem cách chuyển biến JavaScript sang biến Python trong Flask

Trong JavaScript, các biến lưu trữ dữ liệu có thể được sử dụng hoặc chỉnh sửa sau này. Thường được lấy làm đầu vào, các giá trị này thường được sử dụng ở phía máy chủ. Sử dụng Python Flask framework và AJAX, chúng ta có thể chuyển các giá trị JavaScript này sang hàm Python

Truyền biến JavaScript cho biến Python trong Flask

Chúng tôi sẽ đề cập đến hai thành phần cần thiết để thực hiện thao tác này

1. Trước tiên, chúng tôi sẽ tạo trang HTML của mình, với khu vực nhập liệu cơ bản và chức năng JavaScript để chuyển giá trị theo

Chúng tôi có một hàm title[] đang gọi hàm JavaScript senduserinfo[] của chúng tôi. Bây giờ, có một vài điều khoản để hiểu ở đây

  • getElementByID là một phương thức trả về các giá trị có id khớp với chuỗi được cung cấp trong phương thức. Và mặc dù chúng tôi không chuyển bất kỳ giá trị nào cho hàm JavaScript, nhưng nó sẽ nhận được giá trị
  • XMLHttpResponse[phương thức/URL] là một đối tượng AJAX. Nó được sử dụng trong việc gửi dữ liệu đến máy chủ web. Tạo một đối tượng XMLHttpResponse và chuyển giá trị của bạn qua nó
  • JSON. stringify là một phương thức JSON phổ biến. Khi truyền dữ liệu đến máy chủ web, dữ liệu phải ở dạng chuỗi và. phương thức stringify giúp chúng ta làm điều đó

 

2. Bây giờ, chúng ta đến với mã bình. Dữ liệu đã được truyền vào hàm python và bây giờ chúng ta phải nhận nó. Hãy nhớ rằng, chúng tôi đã gửi dữ liệu ở định dạng chuỗi JSON và bây giờ chúng tôi phải mở nó. json. tải, nó nhận chuỗi JSON và chuyển đổi nó thành từ điển Python

Và, đây là cách bạn có thể chuyển một biến JavaScript được chuyển đến một hàm Python bằng Flask

Bạn cũng có thể tham khảo các hướng dẫn khác của tôi –

  • Ma trận nhầm lẫn sử dụng scikit-learning trong Python

2 phản hồi cho "Làm cách nào để chuyển các biến JavaScript sang Python trong Flask?"

  1. V nói.

    Anh bạn này đã cứu mạng tôi hôm nay, cảm ơn rất nhiều

  2. eduardo nói.

    và nếu có nhiều hơn một biến mà tôi phải gửi cho python thì tôi sẽ làm như thế nào, tôi đã thử nhiều cách rồi mà không được

    Đối với hướng dẫn này, chúng tôi sẽ tạo một trình tạo hình ảnh + trích dẫn vui nhộn ngẫu nhiên mà bạn có thể làm mới theo ý muốn để làm tươi sáng ngày của bạn. Để xem trước kết quả cuối cùng, hãy kiểm tra phần cuối của hướng dẫn này 🙂

    Ngoài ra mã đầy đủ cho dự án này có sẵn trên repo GitHub của tôi

     

    1 – Thiết lập

    Nếu bạn muốn sử dụng môi trường ảo Python 3, bạn có thể theo dõi bài đăng này chẳng hạn. Nhưng tất cả những gì bạn thực sự cần là cài đặt Flask

    # Install flask
    pip install flask

    Tạo các thư mục và tệp sau, để trống chúng bây giờ. Chúng tôi điền vào chúng sau

    static/
    templates/
    myapp.py
    runapp.sh

    Trước tiên, bạn cần phải tải một số hình ảnh vui nhộn vào thư mục tĩnh/. Tôi đã lấy của tôi từ 2 trang web này – và Honesttopaws – nhưng tất nhiên bạn có thể sử dụng trang của riêng mình. Để đơn giản, bạn chỉ cần tải xuống những cái trên repo GitHub của tôi tại đây

     

    2 – Tạo một trang web cơ bản

    Trong thư mục templates/, tạo một tệp có tên là index. html, với nội dung bên dưới. Đây là trang web HTML cơ bản hiển thị tiêu đề h3 và hình ảnh, ngoại trừ 2 điều

    • The content inside the

      tags will be filled with a variable called random_quote, to be sent via your Flask app
    • Hình ảnh bên trong img src sẽ là một tệp trong thư mục 'tĩnh' mà bạn đã tạo ở trên và tên tệp hình ảnh sẽ được chỉ định bởi một biến có tên là Random_image, biến này cũng sẽ được cung cấp bởi ứng dụng Flask của bạn
    
    
    
    
    

    {{ random_quote }}

    Bây giờ hãy xem ứng dụng Flask của bạn sẽ gửi các biến này tới chỉ mục như thế nào. html

     

    3 – Tạo ứng dụng bình cơ bản của bạn

    Cho đến nay cấu trúc thư mục của bạn sẽ trông như thế này

    static/
       img1.jpg
       . more images .. 
    templates/ 
       index.html
    myapp.py 
    runapp.sh

     

    Bây giờ hãy mở tệp có tên myapp. py mà bạn đã tạo ở trên và thêm nội dung bên dưới. Về cơ bản chúng tôi đang làm 3 việc ở đó

    Bạn có thể chuyển các biến làm đối số cho render_template[] để sử dụng các biến đó trong tệp mẫu

    # app.py
    @app.route['/about']
    def about[]:
        return render_template['about.html', organization='TestDriven.io']
    
    
    # about.html
    

    Course developed by {{ organization }}.

    Làm cách nào để chuyển giá trị từ HTML sang Python Flask?

    từ bình nhập Flask, render_template, yêu cầu
    @ứng dụng. tuyến đường['/']
    sinh viên chắc chắn[]
    trả về render_template['sinh viên. html']
    @ứng dụng. route['/result',methods = ['POST', 'GET']]
    kết quả chắc chắn[]
    nếu yêu cầu. phương pháp == 'POST'
    trả về render_template["kết quả. html",kết quả = kết quả]

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

    Để đăng dữ liệu biểu mẫu HTML lên máy chủ ở định dạng được mã hóa URL bằng Python, bạn cần phải thực hiện yêu cầu HTTP POST tới máy chủ và cung cấp dữ liệu biểu mẫu HTML trong phần thân . Bạn cũng cần chỉ định loại dữ liệu bằng cách sử dụng Content-Type. tiêu đề yêu cầu ứng dụng/x-www-form-urlencoded. . You also need to specify the data type using the Content-Type: application/x-www-form-urlencoded request header.

    Làm cách nào để gửi dữ liệu HTML tới Flask mà không cần biểu mẫu?

    stringify[layout] sau đó vào. chính. py , thay thế layout = data bằng layout = request. args. lấy['dữ liệu'] .

    Làm cách nào để lấy giá trị từ văn bản đầu vào HTML trong Python?

    Có hai phương pháp để giải quyết vấn đề của bạn. .
    Lấy giá trị đầu vào bằng phương thức nhập của python
    Lấy đầu vào từ biểu mẫu HTML. Trong trường hợp này, trước tiên, bạn cần chạy một máy chủ cục bộ. Để làm điều đó, bạn có thể sử dụng các khung python khác nhau. Ví dụ: bình, chai, Django [Tôi đang sử dụng bình ở đây để hiển thị ví dụ. ]

Chủ Đề