Fields
beanie.odm.fields
Indexed
def Indexed(typ=None, index_type=ASCENDING, **kwargs: Any)
If
typis defined, returns a subclass oftypwith an extra attribute_indexedas a tuple: - Index 0:index_typesuch aspymongo.ASCENDING- Index 1:kwargspassed toIndexModelWhen instantiated the type of the result will actually betyp.When
typis not defined, returns anIndexedAnnotationinstance, to be used as metadata inAnnotatedfields.Example:
# Both fields would have the same behavior class MyModel(BaseModel): field1: Indexed(str, unique=True) field2: Annotated[str, Indexed(unique=True)]
PydanticObjectId
class PydanticObjectId(ObjectId)
Object Id field. Compatible with Pydantic.
ExpressionField
class ExpressionField(str)
ExpressionField.__getitem__
def __getitem__(item)
Get sub field
Arguments:
item: name of the subfieldReturns:
ExpressionField
ExpressionField.__getattr__
def __getattr__(item)
Get sub field
Arguments:
item: name of the subfieldReturns:
ExpressionField
LinkInfo
class LinkInfo(BaseModel)
LinkInfo.document_class
Document class
Link
class Link(Generic[T])
Link.fetch_list
@classmethod
async def fetch_list(cls,
                     links: List[Union[Link[T], DocType]],
                     fetch_links: bool = False)
Fetch list that contains links and documents
Arguments:
links:
fetch_links:
BackLink
class BackLink(Generic[T])
Back reference to a document