我对 SQLModel 还很陌生,所以请多包涵。
我按照他们网站上的 sqlmodel 教程并创建了我自己的 SQLModel 子类:
class Vehicle(SQLModel, table=True):
__tablename__ = "vehicle"
id: int = Field(primary_key=True)
url: str = Field(unique=True)
vehicle_name: str | None = Field(default=None, nullable=True)
然后我创建引擎并将该模型应用到数据库:
url = "< my database url >"
engine = sqlmodel.create_engine(url)
Vehicle.metadata.create_all(engine)
第一次运行此代码时,一切正常。表格已创建,所有定义的列都已存在。但如果我更改车辆模型上的某些属性并再次运行此代码,则表格上没有任何变化。
为什么会发生这种情况?我该如何解决?如果我对车辆模型进行了某些更改,我希望该更改能够被检测到并自动迁移到数据库。