MCPcopy Create free account
hub / github.com/tortoise/tortoise-orm / state_forward

Method state_forward

tortoise/migrations/operations.py:407–421  ·  view source on GitHub ↗
(self, app_label: str, state: State)

Source from the content-addressed store, hash-verified

405 return f"Add field {self.name} to {self.model_name}"
406
407 def state_forward(self, app_label: str, state: State) -> None:
408 model_state = self.get_model_state(state, app_label, self.model_name)
409
410 if self.name in model_state.fields:
411 raise IncompatibleStateError(
412 f"Field {self.name} already present on model {app_label}.{self.model_name}"
413 )
414
415 model_state.fields[self.name] = cast(Field, deepcopy(self.field))
416 models_to_reload = {(app_label, self.model_name)}
417
418 if isinstance(self.field, DIRECT_RELATION_FIELDS):
419 models_to_reload.add(state.apps.split_reference(self.field.model_name))
420
421 state.reload_models(models_to_reload)
422
423 async def database_forward(
424 self,

Callers 2

test_add_fieldFunction · 0.95

Calls 5

get_model_stateMethod · 0.80
addMethod · 0.80
reload_modelsMethod · 0.80
split_referenceMethod · 0.45

Tested by 2

test_add_fieldFunction · 0.76