16 lines
461 B
Python
16 lines
461 B
Python
#!/usr/bin/env python3
|
|
from marshmallow import fields, Schema
|
|
from marshmallow.utils import get_value, missing
|
|
from marshmallow.validate import OneOf
|
|
|
|
import uuid
|
|
|
|
|
|
class InfoSchema(Schema):
|
|
id = fields.UUID(default=uuid.uuid4, missing=uuid.uuid4)
|
|
target_class_name = fields.String()
|
|
|
|
@classmethod # This threats none values as missing
|
|
def get_attribute(cls, attr, obj, default):
|
|
return get_value(attr, obj, default=default) or missing
|