Rumah > Soal Jawab > teks badan
P粉4019012662023-08-02 12:32:15
Dalam Flask, anda boleh menjana jadual HTML secara dinamik dengan panjang berbeza berdasarkan data dalam pangkalan data SQL. Anda tidak perlu membuat beribu-ribu baris secara manual dan mengawal keterlihatannya. Sebaliknya, anda boleh mencapai ini dengan mudah menggunakan enjin templat yang disepadukan ke dalam Flask. Semoga ini membantu anda
Dapatkan data daripada pangkalan data SQL: Dapatkan data daripada pangkalan data menggunakan penyepaduan pangkalan data Flask.
Hantar data ke templat: Dalam laluan Flask anda, hantar data yang diambil daripada pangkalan data sebagai pembolehubah kepada templat HTML.
Gunakan templat: Dalam templat HTML, gunakan sintaks untuk melintasi data dan menjana baris dan sel jadual secara dinamik.
from flask import Flask, render_template app = Flask(__name__) # Replace this with your database connection and query code to fetch data # For demonstration purposes, let's assume you have fetched data in the 'rows' variable rows = [ {'id': 1, 'name': 'John', 'age': 25}, {'id': 2, 'name': 'Jane', 'age': 30}, # Add more rows as needed ] @app.route('/') def index(): return render_template('table_template.html', rows=rows) if __name__ == '__main__': app.run(debug=True)
FAIL HTML
<!DOCTYPE html> <html> <head> <title>Dynamic Table</title> <style> /* Add border to the table */ table { border-collapse: collapse; width: 100%; border: 1px solid black; } /* Add bold font style to the header row */ th { font-weight: bold; } /* Add border to table cells (optional) */ td, th { border: 1px solid black; padding: 8px; } </style> </head> <body> <table> <thead> <tr> <th>ID</th> <th>Name</th> <th>Age</th> </tr> </thead> <tbody> {% for row in rows %} <tr> <td>{{ row.id }}</td> <td>{{ row.name }}</td> <td>{{ row.age }}</td> </tr> {% endfor %} </tbody> </table> </body> </html>