Hallo zusammen,
nachdem ich jetzt Stunden, und zwar wirklich Stunden an nur einem, meiner Meinung nach unnötigem Problem gesessen habe, bitte ich nun um Hilfe.
Folgendes vorab: Nachdem ich die Datenbankkonfiguration ausgelagert habe, fing das Problem wieder an. Zuvor habe ich in die flask_app.py einfach folgendes eingetragen, was das Problem löste:
data = "Daten aus Python-Skript"
Ich persönlich arbeite mich ja in die Programmierung ein, habe aber das Gefühl, dass Flask irgendwie unnötig kompliziert ist. Aber das ist ja nicht wichtig.
Ich habe just for fun OpenAI mal über den Code laufen lassen: Zugegeben, ist das nicht die schlauste Option, aber nach 5 Stunden nur für diesen Code verzweifelt man doch etwas xD
Ich möchte Daten aus der Datenbank abrufen und auf der Webseite anzeigen lassen. Dazu existiert folgender Code:
Hauptverzeichnis/main.py:
from web.flask_app import app
from systm import main
if __name__ == '__main__':
app.run(debug=True, host="0.0.0.0", port=5000) # 5000 Standard
Hauptverzeichnis/systm/main.py:
from flask import Flask, render_template
from systm.d import create_db_connection
app = Flask(__name__)
# Datenbankverbindung initialisieren
db = create_db_connection()
cursor = db.cursor()
@app.route('/')
def display_data():
# Hier können Sie Daten aus Ihrem Python-Skript abrufen
cursor.execute("SELECT * FROM products")
product_info = cursor.fetchall()
# Diese Daten werden an die HTML-Datei übergeben
return render_template('index.html', product_info=product_info)
# Route, um Produktinformationen anzuzeigen
@app.route('/products')
def display_products():
# Informationen aus der Datenbank abrufen
cursor.execute("SELECT * FROM products")
product_info = cursor.fetchall()
# Informationen an das HTML-Template übergeben und anzeigen
return render_template('products.html', product_info=product_info)
if __name__ == '__main__':
app.run(debug=True)
Hauptverzeichnis/systm/d.py:
import mysql.connector
def create_db_connection():
db = mysql.connector.connect(
host="",
user="",
password="",
database=""
)
return db
Hauptverzeichnis/web/flask_app.py:
from flask import Flask, render_template
from systm.d import create_db_connection
app = Flask(__name__, template_folder='web/templates', static_folder='web/static')
# Deaktivieren des Template-Caching
app.jinja_env.auto_reload = True
app.config['TEMPLATES_AUTO_RELOAD'] = True
app.config['STATIC_AUTO_RELOAD'] = True
# Datenbankverbindung initialisieren
db = create_db_connection()
cursor = db.cursor()
@app.route('/')
def display_data():
# Daten aus der Datenbank abrufen
cursor.execute("SELECT * FROM products")
product_info = cursor.fetchall()
# Diese Daten werden an die HTML-Datei übergeben und angezeigt
return render_template('index.html', product_info=product_info)
Hauptverzeichnis/web/templates/index.html :
<!DOCTYPE html>
<html lang="de">
<head>
<meta charset="UTF-8">
<title>Title</title>
<link rel="stylesheet" type="style/css" href="{{ url_for('static', filename='style.css') }}">
</head>
<body>
<h1>Produktinformationen</h1>
<table>
<tr>
<th>Produktname</th>
<th>Verschlüsselungstyp</th>
<!-- Weitere Spalten hinzufügen -->
</tr>
{% for product in product_info %}
<tr>
<td>{{ product[0] }}</td>
<td>{{ product[1] }}</td>
<!-- Weitere Spalten hinzufügen -->
</tr>
{% endfor %}
</table>
</body>
</html>