@mspuz

Django — как добавить данные manytomany при сохранении модели?

Добрый день. Django 4, есть модель Post и модель DictWords. Между ними есть связь ManyToMany. Задача в том, чтобы при сохранении поста, весь текст разбивался на отдельные слова и сохранялся в справочник слов DictWords с настройкой связи между постом и данными словами.
Вопрос в следующем - в какую сторону копать? Сигналы - m2m_changed? Спасибо.
  • Вопрос задан
  • 140 просмотров
Пригласить эксперта
Ответы на вопрос 1
@mspuz Автор вопроса
Сделал как-то так:
@receiver(pre_save, sender=Posts)
def my_handler(sender, **kwargs):
    instance = kwargs.pop('instance', None)
    result_list = []
    for w in instance.post.split():
        res = ''
        for i in w.lower():
            if i.isalpha():
                res += i
        if res and not res in result_list:
            result_list.append(res)
    for i in result_list:
        obj, is_created = DictWords.objects.get_or_create(name=i)
        instance.list_words.add(obj)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы