Skip to content

Commit a68db3c

Browse files
committed
feat: added omit defaults to base class
1 parent 258afb6 commit a68db3c

2 files changed

Lines changed: 2 additions & 2 deletions

File tree

msgspec_schemaorg/base.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
from msgspec import field
88

99

10-
class SchemaOrgBase(msgspec.Struct, frozen=True):
10+
class SchemaOrgBase(msgspec.Struct, frozen=True, omit_defaults=True):
1111
"""
1212
Base class for all Schema.org models with JSON-LD fields.
1313

msgspec_schemaorg/generate.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -599,7 +599,7 @@ def generate_struct_code(self, schema_class_id: str) -> tuple[str, list[str]]:
599599
code.append(f' """{class_description}"""')
600600

601601
# Add type field with this class's name as the default value
602-
code.append(f' type: Optional[str] = field(default="{class_name}", name="@type")')
602+
code.append(f' type: str = field(default_factory=lambda: "{class_name}", name="@type")')
603603

604604
# Add fields and collect dependencies
605605
for prop_name, prop_info in properties.items():

0 commit comments

Comments
 (0)