From 64861ac9adf49b98cc2fe6c741f1f63e3b2a337c Mon Sep 17 00:00:00 2001 From: Ivan <8611739+IRBorisov@users.noreply.github.com> Date: Fri, 2 Aug 2024 11:17:14 +0300 Subject: [PATCH] M: Add Operation to Inheritance model --- rsconcept/backend/apps/oss/admin.py | 8 ++++++++ .../migrations/0005_inheritance_operation.py | 20 +++++++++++++++++++ .../backend/apps/oss/models/Inheritance.py | 6 ++++++ 3 files changed, 34 insertions(+) create mode 100644 rsconcept/backend/apps/oss/migrations/0005_inheritance_operation.py diff --git a/rsconcept/backend/apps/oss/admin.py b/rsconcept/backend/apps/oss/admin.py index 288616b2..0dceed05 100644 --- a/rsconcept/backend/apps/oss/admin.py +++ b/rsconcept/backend/apps/oss/admin.py @@ -25,6 +25,14 @@ class SynthesisSubstitutionAdmin(admin.ModelAdmin): search_fields = ['id', 'operation', 'original', 'substitution'] +class InheritanceAdmin(admin.ModelAdmin): + ''' Admin model: Inheritance. ''' + ordering = ['operation'] + list_display = ['id', 'operation', 'parent', 'child'] + search_fields = ['id', 'operation', 'parent', 'child'] + + admin.site.register(models.Operation, OperationAdmin) admin.site.register(models.Argument, ArgumentAdmin) admin.site.register(models.Substitution, SynthesisSubstitutionAdmin) +admin.site.register(models.Inheritance, InheritanceAdmin) diff --git a/rsconcept/backend/apps/oss/migrations/0005_inheritance_operation.py b/rsconcept/backend/apps/oss/migrations/0005_inheritance_operation.py new file mode 100644 index 00000000..f53b23fb --- /dev/null +++ b/rsconcept/backend/apps/oss/migrations/0005_inheritance_operation.py @@ -0,0 +1,20 @@ +# Generated by Django 5.0.7 on 2024-08-02 07:01 + +import django.db.models.deletion +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('oss', '0004_remove_substitution_transfer_term'), + ] + + operations = [ + migrations.AddField( + model_name='inheritance', + name='operation', + field=models.ForeignKey(default=None, on_delete=django.db.models.deletion.CASCADE, related_name='inheritances', to='oss.operation', verbose_name='Операция'), + preserve_default=False, + ), + ] diff --git a/rsconcept/backend/apps/oss/models/Inheritance.py b/rsconcept/backend/apps/oss/models/Inheritance.py index 4ebd9826..f6d3c4f8 100644 --- a/rsconcept/backend/apps/oss/models/Inheritance.py +++ b/rsconcept/backend/apps/oss/models/Inheritance.py @@ -4,6 +4,12 @@ from django.db.models import CASCADE, ForeignKey, Model class Inheritance(Model): ''' Inheritance links parent and child constituents in synthesis operation.''' + operation: ForeignKey = ForeignKey( + verbose_name='Операция', + to='oss.Operation', + on_delete=CASCADE, + related_name='inheritances' + ) parent: ForeignKey = ForeignKey( verbose_name='Исходная конституента', to='rsform.Constituenta',