Как автоматически обновить поля выбора в моделях Django? - PullRequest
0 голосов
/ 28 февраля 2019

привет, у меня есть категории и продукты.я использую библиотеку django-mptt только для отображения категорий потомков для продуктов.Я написал поле пользовательских подкатегорий, чтобы показать только категорию потомков.После обновления категорий, подкатегории не обновляются в продуктах в соответствующем поле.и я должен перезагрузить сервер.

как я могу сделать это без перезагрузки сервера

from django.db import models 
from mptt.models import MPTTModel, TreeForeignKey

class Genre(MPTTModel):
     name = models.CharField(max_length=50, unique=True)

     parent = TreeForeignKey('self', on_delete=models.CASCADE, null=True,     blank=True, related_name='children')


    class MPTTMeta:
         level_attr = 'mptt_level'
         order_insertion_by = ['name']


    def __str__(self):
        return self.name


class Product(models.Model):

     nodes = Genre.objects.all()


     CHOICE_SUBCATEGORIES = [

     ]

     for node in nodes:
         if node.is_leaf_node():
            node.get_descendants(include_self=False)
            print(node.get_descendants(include_self=False))
            CHOICE_SUBCATEGORIES.append((node.id, node.name))


      name            = models.CharField(max_length=128)
      genre           = models.ForeignKey(Genre, on_delete=models.CASCADE, null=True, blank=True, default=None)
      subcategories   = models.CharField(max_length=128, choices=CHOICE_SUBCATEGORIES, default=None, null=True, blank=True)

      def __str__(self):
          return self.name
...