Я хочу установить набор запросов на ManyToManyField, чтобы получить все объекты, для которых ForeignKey равен ForeignKey, установленному в другом поле формы.
class ProductAdminForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super(ProductAdminForm, self).__init__(*args, **kwargs)
self.fields['variants'].queryset = Variant.objects.filter(variantCategory__productCategory__name_single='test')
Это работает, выбирает все значения "Variant", где«name_single» для productCategory в его вариантеCategory равно «test». Я хочу заменить «test» на «name_equal» для productCategory, установленного в этой самой форме.
Вот некоторый код, иллюстрирующий отношение объектов друг к другу.
class Variant(models.Model):
variantCategory = models.ForeignKey('VariantCategory')
class VariantCategory(models.Model):
productCategory = models.ForeignKey('ProductCategory')
class ProductCategory(models.Model):
name_single = models.CharField()
https://imgur.com/a/OLah8at
Здесь показано поле, которое должно определять productCategory равным.
Я понимаю, что это сложно объяснить, если кому-то из вас понадобится дополнительный код / информация, дайте мне знать!
Кроме того, мне просто нужен запрос, чтобы получить все объекты, где productCategory равно другой productCategory. Часть name_equal на самом деле не имеет значения, может быть идентификатором объекта!