通过比较原因错误进行属性筛选

2024-10-01 11:27:50 发布

您现在位置:Python中文网/ 问答频道 /正文

型号:

class Thing(db.Model):
    __tablename__ = 'things'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(128))
    type_id = db.Column(db.Integer, db.ForeignKey('types_of_things.id'))

class TypeOfThing(db.Model):
    __tablename__ = 'types_of_things'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(64))
    number = db.Column(db.Integer)
    things = db.relationship('Thing', backref='type', lazy='dynamic')

尝试:

Thing.query.join(TypeOfThing).filter_by(Thing.type.number<=1).first()

原因:

AttributeError: Neither 'InstrumentedAttribute' object nor 'Comparator' object associated with Thing.type has an attribute 'number'

尝试:

Thing.query.join(TypeOfThing).filter_by(number<=1).first()

原因:

NameError: name 'number' is not defined


Tags: keynameidnumberdbmodeltypecolumn