Skip to content

Simple fields

Factory functions that return FieldSpec instances for common scalar types. Each factory accepts keyword arguments for validation constraints like required, max_length, min_value, choices, etc.

See Simple Fields reference for a summary table and Field Arguments for all available keyword arguments.

String

String(
    max_length: int = 255,
    min_length: int | None = None,
    sanitize: bool | None = None,
    **kwargs: Any,
) -> str
Source code in src/protean/fields/simple.py
294
295
296
297
298
299
def String(  # type: ignore[misc]
    max_length: int = 255,
    min_length: int | None = None,
    sanitize: bool | None = None,
    **kwargs: Any,
) -> str: ...

Text

Text(sanitize: bool | None = None, **kwargs: Any) -> str
Source code in src/protean/fields/simple.py
301
def Text(sanitize: bool | None = None, **kwargs: Any) -> str: ...  # type: ignore[misc]

Integer

Integer(
    min_value: int | None = None,
    max_value: int | None = None,
    **kwargs: Any,
) -> int
Source code in src/protean/fields/simple.py
303
304
305
306
307
def Integer(  # type: ignore[misc]
    min_value: int | None = None,
    max_value: int | None = None,
    **kwargs: Any,
) -> int: ...

Float

Float(
    min_value: float | None = None,
    max_value: float | None = None,
    **kwargs: Any,
) -> float
Source code in src/protean/fields/simple.py
309
310
311
312
313
def Float(  # type: ignore[misc]
    min_value: float | None = None,
    max_value: float | None = None,
    **kwargs: Any,
) -> float: ...

Boolean

Boolean(**kwargs: Any) -> bool
Source code in src/protean/fields/simple.py
323
def Boolean(**kwargs: Any) -> bool: ...  # type: ignore[misc]

Date

Date(**kwargs: Any) -> date
Source code in src/protean/fields/simple.py
325
def Date(**kwargs: Any) -> datetime.date: ...  # type: ignore[misc]

DateTime

DateTime(**kwargs: Any) -> datetime
Source code in src/protean/fields/simple.py
327
def DateTime(**kwargs: Any) -> datetime.datetime: ...  # type: ignore[misc]

Identifier

Identifier(identifier: bool = False, **kwargs: Any) -> str
Source code in src/protean/fields/simple.py
329
def Identifier(identifier: bool = False, **kwargs: Any) -> str: ...  # type: ignore[misc]

Auto

Auto(
    increment: bool = False,
    identifier: bool = False,
    identity_strategy: str | None = None,
    identity_function: str
    | Callable[..., Any]
    | None = None,
    identity_type: str | None = None,
    **kwargs: Any,
) -> str
Source code in src/protean/fields/simple.py
331
332
333
334
335
336
337
338
def Auto(  # type: ignore[misc]
    increment: bool = False,
    identifier: bool = False,
    identity_strategy: str | None = None,
    identity_function: str | Callable[..., Any] | None = None,
    identity_type: str | None = None,
    **kwargs: Any,
) -> str: ...

Custom

Custom(
    python_type: type[_T],
    *,
    validators: Iterable[Any] = (),
    serializers: Iterable[Any] = (),
    **constraints: Any,
) -> _T
Source code in src/protean/fields/simple.py
347
348
349
350
351
352
353
def Custom(  # type: ignore[misc]
    python_type: type[_T],
    *,
    validators: Iterable[Any] = (),
    serializers: Iterable[Any] = (),
    **constraints: Any,
) -> _T: ...