Найти - Пользователи
Полная версия: ошибка "TypeError: 'NoneType' object has no attribute '__getitem__'"
Начало » Python для новичков » ошибка "TypeError: 'NoneType' object has no attribute '__getitem__'"
1
Egor2010
from app import app
from flask import render_template
@app.route('/profile/<id>')
def profile(id):
sql="""SELECT * FROM users WHERE id='%(id)s'"""%{"id":id}
data=db.query(sql)
user={'id': data[0],
'email':data[1],
'password':data[2],
'first_name':data[3],
'last_name':data[4],
'image':data[5]}
return render_template("profile.html",user=user)
выводит ошибку
    user={'id': data[0],
TypeError: 'NoneType' object has no attribute '__getitem__'
в чем ошибка? как исправить?
4kpt_III
Ошибка в том, что ничего не возвращает Ваш запрос. Используйте sqlalchmy. Не мучайте себя и flask

P.S. И основы все же придется почитать. А то так и будете двигаться сантиметровыми шажками…
Egor2010
4kpt_III
Ошибка в том, что ничего не возвращает Ваш запрос. Используйте sqlalchmy. Не мучайте себя и flask P.S. И основы все же придется почитать. А то так и будете двигаться сантиметровыми шажками…
Совет на счёт sqlalchmy принят )
А на счёт запроса ,всмысле не чего не возрашает ,от куда бы у меня появились данные из базы?
4kpt_III
Ошибку вызывает эта строка

'id': data[0]

Смотрим на нее и на ошибку

Egor2010
TypeError: ‘NoneType’ object has no attribute ‘__getitem__’

Это значит, что data == None, а у None нет метода __getitem__. Просто по данному id ничего нет. А может запрос не отрабатывает…
Egor2010
4kpt_III
Ошибку вызывает эта строка
Если я заменяю её на
'id': id
То ошибка
    user='email': data[1],
TypeError: 'NoneType' object has no attribute '__getitem__'
В вебе страница открывается как надо,а в flask консоле ошибка.
4kpt_III
Вы издеваетесь?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB