假设模型名为MyModel,属性名为my_list_attr,需要查询属性列表my_list_attr中元素的属性。可以使用以下代码示例:
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
class MyModel(db.Model):
id = db.Column(db.Integer, primary_key=True)
my_list_attr = db.Column(db.PickleType)
# 获取第一个元素的属性值
first_element_attr = MyModel.query.filter_by(id=1).first().my_list_attr[0].attribute_name
# 获取所有元素的属性列表
element_attrs = [elem.attribute_name for elem in MyModel.query.filter_by(id=1).first().my_list_attr]
其中,attribute_name
为要查询的列表元素的属性名。注意,列表元素需要支持属性查询。这里使用了PickleType
类型来存储列表,如果以其他方式存储列表,需要相应修改代码。