を追加するときに「NoneType」オブジェクトがエラー「filter_by」は属性を持っていない私は自分のDBについては、以下の構造を作成しようとしています:フラスコSQLAlchemyの:関係
私はChefModel
や子供などCustomerModel
で親クラスUserModel
を持っています。私がOrderModel
と両方のクラスの間に関係を追加しようとするまで、すべてうまくいきます。 UserModel
またはChefModel
へのすべての通話で、次のエラーが発生します。例えば、私がしようとすると、シェフを見つけるために:
class ChefModel(UserModel):
__tablename__ = 'chefs'
id = db.Column(db.Integer, db.ForeignKey('users.id'), primary_key = True)
food_items = db.relationship("FoodItemModel", backref="chef", lazy=True)
__mapper_args__ = {'polymorphic_identity':'chefs'}
CustomerModel:
class CustomerModel(UserModel):
__tablename__ = 'customers'
id = db.Column(db.Integer, db.ForeignKey('users.id'), primary_key = True)
__mapper_args__ = {'polymorphic_identity':'customers'}
そしてOrderModel:ここ
File "C:\Users\Moham\Documents\Food order\resources\chef.py", line 60, in get
users = ChefModel.query.filter_by(active = True).all()
AttributeError: 'NoneType' object has no attribute 'filter_by'
は私ChefModelある
class OrderModel(db.Model):
__tablename__ = 'orders'
order_id = db.Column(db.Integer, primary_key = True)
updated_date = db.Column(db.DateTime, default=datetime.utcnow())
description = db.Column(db.String(254))
food_items = db.relationship("FoodItemModel", secondary = association_table)
customer_id = db.relationship(db.Integer, db.ForeignKey('customers.id')) //if remove this line
chef_id = db.relationship(db.Integer, db.ForeignKey('chefs.id')) //and this line, calls are normal
何私は間違っている?
おそらく問題はフィルタにありますか? 'users = ChefModel.query.filter(ChefModel.active.is_(True))。all()' – Arunmozhi
'UserModel'基本クラスはどのように見えますか? – bow