4
我有很多一對多的類別和產品之間的關係如下:燒瓶SQLAlchemy的查詢多到很多
category_product = db.Table('category_product',
db.Column('category_id',
db.Integer,
db.ForeignKey('category.id')),
db.Column('product_id',
db.Integer,
db.ForeignKey('product.id')))
class Product(db.Model):
""" SQLAlchemy Product Model """
id = db.Column(db.Integer, primary_key=True)
sku = db.Column(db.String(10), unique=True, nullable=False)
name = db.Column(db.String(80), nullable=False)
categories = db.relationship('Category', secondary=category_product,
backref=db.backref('categories',
lazy='dynamic'))
def __init__(self, name):
self.name = name
def __repr__(self):
return '<Product {}>'.format(self.name)
class Category(db.Model):
""" SQLAlchemy Category Model """
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String(80), nullable=False)
products = db.relationship('Product', secondary=category_product,
backref=db.backref('products', lazy='dynamic'))
def __init__(self, name):
self.name = name
def __repr__(self):
return '<Category {}>'.format(self.name)
我試圖讓在一個給定的Category
所有Product
對象,指定通過category_id
:
products = db.session.query(Category).\
filter_by(id=category_id).\
products.\
all()
不過,我得到以下異常:
AttributeError: 'Query' object has no attribute 'products'
我可能錯過了一些簡單的東西。
我得到這個:'AttributeError的: '名單' 對象有沒有屬性「products'' –
對不起糾正答案。只需使用第一個() – codegeek
'首先()'做了詭計......謝謝! –