Это мой первый пост в стеке, поэтому дайте мне знать, если что-то нужно отредактировать и т.д. c. Заранее спасибо!
В настоящее время я пытаюсь использовать ajax для выполнения нескольких вызовов 'GET' в моей структуре класса Database db. Приблизительно 75% это успешно, и пример правильного вывода -
{'id': 1, 'name': 'user', 'email': 'user@mail', 'is_admin': False}
, и моя ошибка выводится следующим образом:
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) disk I/O error
[SQL: SELECT user.id AS user_id, user.name AS user_name, user.email AS user_email, user.is_admin AS user_is_admin, user.password AS user_password
FROM user
WHERE user.id = ?
LIMIT ? OFFSET ?]
[parameters: (1, 1, 0)]
Я действительно пытался осмотреться здесь и на sqlalchemys собственный сайт с кодом ошибки, но я не смог расшифровать ошибку.
Это мой класс базы данных:
class User(db.Model):
__tablename__ = 'user'
id = db.Column(db.Integer, primary_key = True)
name = db.Column(db.String, nullable = False)
email = db.Column(db.String, nullable = False)
is_admin = db.Column(db.Boolean, server_default=expression.false(), nullable = False)
password = db.Column(db.String, nullable = False)
def __repr__(self):
return '<User{}: {} {} {} >'.format(self.id, self.name, self.email, self.password)
def serialize(self):
return dict(id=self.id, name=self.name, email=self.email, is_admin=self.is_admin)
Функция GET
@app.route('/user/<int:user_id>', methods = ['GET','PUT','DELETE'])
@jwt_required
def userid(user_id):
`if request.method == 'GET':
z = int(user_id)
user = User.query.filter_by(id = z).first_or_404()
print(user.serialize())
carArray= []
for x in Car.query.filter_by(user_id=z).all():
print(x.serialize())
carArray.append(x.serialize())
dict = {"name": user.name, "email": user.email, "id": user.id, "password": user.password, "cars": carArray}
return jsonify(dict)`