在SQLAlchemy中使用JSON字段非常简单,只需在定义模型时指定字段类型为JSON
即可。下面是一个示例:
from sqlalchemy import create_engine, Column, Integer, String from sqlalchemy.dialects.postgresql import JSON from sqlalchemy.ext.declarative import declarative_base from sqlalchemy.orm import sessionmaker Base = declarative_base() class User(Base): __tablename__ = 'users' id = Column(Integer, primary_key=True) name = Column(String) data = https://www.yisu.com/ask/Column(JSON)'postgresql://username:password@localhost/database_name') # 创建表 Base.metadata.create_all(engine) # 创建会话 Session = sessionmaker(bind=engine) session = Session() # 添加数据 user = User(name='Alice', data=https://www.yisu.com/ask/{'age': 30, 'gender': 'female'}) session.add(user) session.commit() # 查询数据 user = session.query(User).filter_by(name='Alice').first() print(user.data)
在这个示例中,我们定义了一个User
模型,其中包含一个data
字段,类型为JSON
。我们可以像使用其他字段一样对其进行操作。在添加数据时,我们可以使用字典作为值传递给data
字段。在查询数据时,我们可以像访问字典一样访问data
字段的值。