MCPcopy
hub / github.com/ormar-orm/ormar / extract_related_names

Method extract_related_names

ormar/models/mixins/relation_mixin.py:83–105  ·  view source on GitHub ↗

Returns list of fields names for all relations declared on a model. List is cached in cls._related_names for quicker access. :return: set of related fields names :rtype: set

(cls)

Source from the content-addressed store, hash-verified

81
82 @classmethod
83 def extract_related_names(cls) -> set[str]:
84 """
85 Returns list of fields names for all relations declared on a model.
86 List is cached in cls._related_names for quicker access.
87
88 :return: set of related fields names
89 :rtype: set
90 """
91 if cls._related_names is not None:
92 return cls._related_names
93
94 related_names = set()
95 for name, field in cls.ormar_config.model_fields.items():
96 if (
97 isinstance(field, BaseField)
98 and field.is_relation
99 and not field.is_through
100 and not field.skip_field
101 ):
102 related_names.add(name)
103 cls._related_names = related_names
104
105 return related_names
106
107 @classmethod
108 def _extract_db_related_names(cls) -> set:

Callers 15

select_allMethod · 0.80
updateMethod · 0.80
bulk_updateMethod · 0.80
__setstate__Method · 0.80
__hash__Method · 0.80
model_constructMethod · 0.80
_construct_relationsMethod · 0.80

Calls 1

addMethod · 0.45

Tested by 1