Django admin. Чтобы в "select" происходил выбор из определенных записей с использованием соответствующего дополнительного ключа
Помогите сделать так, чтобы в "specsAdmin" в строке "Characteristic:" отображались только те варианты (после выбора товара), которые имеют тот же id категории, что и товар проблема с изображениями
вот такой код в model.py
class specs(models.Model):
""" Характеристика к товару """
tovar = models.ForeignKey(Tovars, on_delete=models.CASCADE)
gl_category = models.CharField("Категория xарактеристики", max_length=50, null=True)
category = models.ForeignKey("detail", verbose_name="Характеристика", on_delete=models.CASCADE)
description = models.TextField("Значение")
def clean(self, *args, **kwargs):
if self.tovar == self.category:
return super().clean(*args, **kwargs)
raise ValidationError('товар и характеристика к товару должны совпадать')
class Meta:
verbose_name = "Характеристика к товару"
verbose_name_plural = "Характеристики к товару"
def __str__(self):
return self.tovar
def get_absolute_url(self):
return reverse("specs_detail", kwargs={"pk": self.pk})
class detail(models.Model):
""" Описание характеритики """
category = models.CharField("Характеристика", max_length=50)
сategory_tovar = models.ForeignKey(Category, verbose_name="Категория", on_delete=models.CASCADE)
details = models.TextField("Описание характерискики", null=True, blank=True)
class Meta:
verbose_name = "Описание характеритики"
verbose_name_plural = "Описание характеритики"
def __str__(self):
return self.category
def get_absolute_url(self):
return reverse("detail_detail", kwargs={"pk": self.pk})
и подобное в файле admin.py
@admin.register(specs)
class specsAdmin(admin.ModelAdmin):
""" Характеристика к товару """
list_display = ('tovar', 'gl_category', 'category', 'description')
search_fields = ('tovar', 'name')
@admin.register(detail)
class detailAdmin(admin.ModelAdmin):
""" Описание характеритики """
list_display = ('category', 'details', 'сategory_tovar')
search_fields = ('category',)
это detailAdmin img 1 detailAdmin img 2 detailAdmin это specsAdmin img 3 specsAdmin