🐛 Fix RuntimeError: dictionary changed size during iteration in sqlmodel_update() (#997)

Co-authored-by: Motov Yurii <109919500+YuriiMotov@users.noreply.github.com>
This commit is contained in:
Bart Schuurmans
2025-12-23 17:23:54 +01:00
committed by GitHub
parent fb331e7ce7
commit 6cec19c8dc
2 changed files with 21 additions and 2 deletions

20
tests/test_update.py Normal file
View File

@@ -0,0 +1,20 @@
from sqlmodel import Field, SQLModel
def test_sqlmodel_update():
class Organization(SQLModel, table=True):
id: int = Field(default=None, primary_key=True)
name: str
headquarters: str
class OrganizationUpdate(SQLModel):
name: str
org = Organization(name="Example Org", city="New York", headquarters="NYC HQ")
org_in = OrganizationUpdate(name="Updated org")
org.sqlmodel_update(
org_in,
update={
"headquarters": "-", # This field is in Organization, but not in OrganizationUpdate
},
)