你好,我在flask-sqlalchemy加入有问题。我是一个数据库和烧瓶的初学者。
以下是我的类:
class Shopping(db.Model):
__tablename__ = 'shoppings'
id = db.Column(db.Integer, primary_key=True)
product_name = db.Column(db.String(30), index=True, unique=False)
price=db.Column(db.Float(10), index=True)
date=db.Column(db.Date())
s_type_id = db.Column(db.Integer, db.ForeignKey('shopping_types.id'))
def __repr__(self):
return 'Alisveris yeri :{0} Tutar :{1} Tarih: {2}'.format(self.product_name,self.price,self.date)
def __list__(self):
return [self.product_name,self.price,self.date]
class Shopping_Type(db.Model):
__tablename__='shopping_types'
id=db.Column(db.Integer,primary_key=True)
type_name=db.Column(db.String(30), index=True, unique=True)
types = db.relationship('Shopping', backref = 'shopping_types', lazy = 'dynamic')
def __repr__(self):
return '{0}'.format(self.type_name)当我在python终端上尝试并运行:
select shoppings.product_name ,shoppings.price, shoppings.date, shopping_types.type_name from shoppings join shopping_types ON shoppings.s_type_id=shopping_types.id查询
我得到了我想要的东西,但是当我运行flask-sqlalchemy命令时:
rslt=db.session.query(spng).join(st)
spng:Shopping(class)
st:Shopping_Type(class)我只得到购物数据。我想获得购物+ Shopping_Type数据。
谢谢。
发布于 2014-09-24 02:23:51
rslt = db.session.query(spng, st).join(st)结果将是(Shopping, Shopping_Type)的tuples的可枚举数
发布于 2020-07-25 16:59:39
rslt = db.session.query(spng, st).filter(spng.s_type_id == st.id).all()
for x, y in rslt:
print("Product ID: {} Product Name: {} Sopping Type: {}".format(x.id, x.product_name, y.tye_name))类型(Rslt)是一个元组,包含的元素为表连接的个数。
https://stackoverflow.com/questions/26000764
复制相似问题