Мне нужно запросить базу данных SQLAlchemy по ее id
, что-то вроде
User.query.filter_by (username = 'peter')
но для id. Как мне это сделать? [Поиск в Google и SO не помог]
Если Вы используете tables reflection
, у Вас могли бы быть проблемы с данными решениями. (Предыдущие решения здесь не работали на меня).
то, Что я закончил тем, что использовал, было:
session.query(object._class_).get(id)
(object
был получен отражением от базы данных, это - то, почему необходимо использовать .__class__
)
, я надеюсь, что это помогает.
Во-первых, необходимо установить id
как первичный ключ.
Тогда Вы могли использовать query.get()
метод для запросов объектов id
, который уже является первичным ключом.
Начиная с query.get()
метод для запросов объектов первичным ключом.
Выведенный от документация Фляги-SQLAlchemy
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
app = Flask(__name__)
db = SQLAlchemy()
db.init_app(app)
class User(db.Model):
__tablename__ = 'users'
id = db.Column(db.Integer, primary_key=True)
def test():
id = 1
user = User.query.get(id)