Django Сигналы Python

В этом фрагменте кода я хочу получить текст из недавно созданных данных в модели

models.py:

from django.db import models


class Tokenize(models.Model):
    text = models.TextField()


class Pos(models.Model):
    POS_TAGS = [
        ('NOUN', 'NOUN'),
        ('ADJ', 'ADJ'),
        ('NUM', 'NUM'),
        ('PRON', 'PRON'),
        ('ADV', 'ADV'),
        ('VERB', 'VERB'),
        ('CNJ', 'CNJ'),
        ('ADP', 'ADP'),
        ('PRT', 'PRT'),
        ('INTJ', 'INTJ'),
        ('MOD', 'MOD'),
        ('IMIT', 'IMIT'),
        ('AUX', 'AUX'),
        ('PPN', 'PPN'),
        ('PUNC', 'PUNC'),
        ('SYM', 'SYM')
    ]
    token = models.CharField(max_length=150)
    pos = models.CharField(max_length=150, choices=POS_TAGS, null=True, default='NOUN')

signals.py:

from django.db.models.signals import post_save
from django.dispatch import receiver
from .models import Tokenize, Pos
from uztagger import Tagger

Uztagger помечает тегами каждое слово в тексте пример: ввод: "Белая доска" выходные данные: [('White', 'ADJ'), ('board', 'NOUN')]. но это для узбекского языка

@receiver(post_save, sender=Tokenize)
def create_profile(sender, instance, created, **kwargs):
    tagger = Tagger()
    if created:
        text = instance.text # there i should get text of receantly created data
        tokens = tagger.pos_tag(text)
        for token in tokens:
            a = Pos(token=token[0], pos=token[1]) # and there i should create tagged data
            a.save()

Я должен получить данные из инстанса и разместить их в другой модели

Вернуться на верх