Portal/rsconcept/backend/apps/oss/models/Substitution.py
Ivan fde844f5c2
Some checks failed
Backend CI / build (3.12) (push) Has been cancelled
Frontend CI / build (22.x) (push) Has been cancelled
F: Implement substitutions propagation
2024-08-12 16:51:24 +03:00

33 lines
1.0 KiB
Python

''' Models: Synthesis Substitution. '''
from django.db.models import CASCADE, ForeignKey, Model
class Substitution(Model):
''' Substitutions as part of Synthesis operation in OSS.'''
operation: ForeignKey = ForeignKey(
verbose_name='Операция',
to='oss.Operation',
on_delete=CASCADE
)
original: ForeignKey = ForeignKey(
verbose_name='Удаляемая конституента',
to='rsform.Constituenta',
on_delete=CASCADE,
related_name='as_original'
)
substitution: ForeignKey = ForeignKey(
verbose_name='Замещающая конституента',
to='rsform.Constituenta',
on_delete=CASCADE,
related_name='as_substitute'
)
class Meta:
''' Model metadata. '''
verbose_name = 'Отождествление синтеза'
verbose_name_plural = 'Таблицы отождествлений'
def __str__(self) -> str:
return f'{self.substitution} -> {self.original}'