Я передаю информацию в свой шаблон, но когда я загружаю локальный сервер, я ничего не вижу, когда ожидаемый вывод - это список паролей, которые хранятся в моей базе данных. Я вкладываю кучу печатных операторов, чтобы помочь отладке кода, но, похоже, все обрабатывается нормально. Функция, которая обрабатывает код, заключается в следующем: < /p>
@app.route('/dashboard')
def dashboard():
if 'user' not in session:
print("User not found!!")
return redirect(url_for('login'))
user_id = session['user']['id']
print(f"\nDEBUG: Logged-in user ID -> {user_id}") # Debugging
with sqlite3.connect('database.db') as conn:
cursor = conn.cursor()
cursor.execute('SELECT service, username, password FROM passwords WHERE user_id = ?', (user_id,))
rows = cursor.fetchall()
cursor.execute('SELECT COUNT(*) FROM passwords WHERE user_id = ?', (user_id,))
total_passwords = cursor.fetchone()[0]
cursor.execute("SELECT COUNT(*) FROM passwords WHERE user_id = ? AND strength = 'Strong'", (user_id,))
strong_count = cursor.fetchone()[0]
cursor.execute("SELECT COUNT(*) FROM passwords WHERE user_id = ? AND strength = 'weak'", (user_id,))
weak_count = cursor.fetchone()[0]
cursor.execute("SELECT COUNT(*) FROM bankcards WHERE user_id = ?", (user_id,))
total_cards = cursor.fetchone()[0]
cursor.execute("SELECT COUNT(*) FROM notes WHERE user_id = ?", (user_id,))
total_notes = cursor.fetchone()[0]
print("\nDEBUG: Retrieved passwords ->", rows) # Debugging
# Convert tuples into dictionaries for better template handling
passwords = [{'service': row[0], 'username': row[1], 'password': row[2]} for row in rows]
name = get_name(user_id)
# Check if passwords are passed to the template
response = render_template('dashboard.html',
user=session['user'],
passwords=passwords,
total_passwords=total_passwords,
strong_count=strong_count,
weak_count=weak_count,
total_cards=total_cards,
total_notes=total_notes,
name=name)
print("\nDEBUG: Rendering dashboard with passwords ->", passwords) # Debugging
return response
< /code>
И это код HTML < /p>
{% if passwords %}
{% for entry in passwords %}
{{ entry.service[0]|upper }}
{{ entry.service }}
{{ entry.username }}
value="{{ entry.password }}" readonly style="width: 150px; border: none; background: none;">
{% endfor %}
{% else %}
No saved passwords.
{% endif %}
Подробнее здесь: https://stackoverflow.com/questions/794 ... m-template
Нет вывода из шаблона ⇐ Html
Программисты Html
1740231285
Anonymous
Я передаю информацию в свой шаблон, но когда я загружаю локальный сервер, я ничего не вижу, когда ожидаемый вывод - это список паролей, которые хранятся в моей базе данных. Я вкладываю кучу печатных операторов, чтобы помочь отладке кода, но, похоже, все обрабатывается нормально. Функция, которая обрабатывает код, заключается в следующем: < /p>
@app.route('/dashboard')
def dashboard():
if 'user' not in session:
print("User not found!!")
return redirect(url_for('login'))
user_id = session['user']['id']
print(f"\nDEBUG: Logged-in user ID -> {user_id}") # Debugging
with sqlite3.connect('database.db') as conn:
cursor = conn.cursor()
cursor.execute('SELECT service, username, password FROM passwords WHERE user_id = ?', (user_id,))
rows = cursor.fetchall()
cursor.execute('SELECT COUNT(*) FROM passwords WHERE user_id = ?', (user_id,))
total_passwords = cursor.fetchone()[0]
cursor.execute("SELECT COUNT(*) FROM passwords WHERE user_id = ? AND strength = 'Strong'", (user_id,))
strong_count = cursor.fetchone()[0]
cursor.execute("SELECT COUNT(*) FROM passwords WHERE user_id = ? AND strength = 'weak'", (user_id,))
weak_count = cursor.fetchone()[0]
cursor.execute("SELECT COUNT(*) FROM bankcards WHERE user_id = ?", (user_id,))
total_cards = cursor.fetchone()[0]
cursor.execute("SELECT COUNT(*) FROM notes WHERE user_id = ?", (user_id,))
total_notes = cursor.fetchone()[0]
print("\nDEBUG: Retrieved passwords ->", rows) # Debugging
# Convert tuples into dictionaries for better template handling
passwords = [{'service': row[0], 'username': row[1], 'password': row[2]} for row in rows]
name = get_name(user_id)
# Check if passwords are passed to the template
response = render_template('dashboard.html',
user=session['user'],
passwords=passwords,
total_passwords=total_passwords,
strong_count=strong_count,
weak_count=weak_count,
total_cards=total_cards,
total_notes=total_notes,
name=name)
print("\nDEBUG: Rendering dashboard with passwords ->", passwords) # Debugging
return response
< /code>
И это код HTML < /p>
{% if passwords %}
{% for entry in passwords %}
{{ entry.service[0]|upper }}
{{ entry.service }}
{{ entry.username }}
[i] value="{{ entry.password }}" readonly style="width: 150px; border: none; background: none;">
[/i]
{% endfor %}
{% else %}
No saved passwords.
{% endif %}
Подробнее здесь: [url]https://stackoverflow.com/questions/79459692/no-output-from-template[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия