0

也許有人可以幫助我,我使用Django具有以下models.py:Django的對象相關的類別和子類別的形式顯示

class FilterCategory(models.Model): 
     name = models.CharField(max_length=50) 

     def __str__(self): 
      return self.name 

    class FilterValue(models.Model): 
     category = models.ForeignKey(FilterCategory) 
     value = models.CharField(max_length=50) 


    class Video(models.Model): 
     title = models.CharField(max_length=500) 
     filters = models.ManyToManyField(FilterValue, blank=True) 

現在我需要的是展示模板的HTML表單,其中用戶可以選擇過濾視頻在不同的領域,所以可以說在框A用戶可以選擇一個或多個類別A的過濾器

有沒有人有想法什麼是最好的方法?

回答

0

您可以創建一個帶有兩個ModelChoiceField的模型表單,並在每個類別中使用查詢集containsig過濾器傳遞它們。然後,您可以覆蓋表單的save方法,您可以使用已清除的表單數據將過濾器添加到視頻模型。