Есть 2 приложения: products
и providers
.
Создаю продукт. В шаблон (форму создания) я могу вывести список категорий для соответствующего провайдера. Но вот при нажатии на кнопку "Сохранить" (submit) вылетает ошибка 500 - ValueError at /products/add/
Cannot assign "<QuerySet [<Category: Питание>]>": "Product.category" must be a "Category" instance.
products/models.py
class Category(models.Model):
....
class Product(models.Model)
category = models.ForeignKey(
Category, related_name='product',
verbose_name=_('category'), null=True, on_delete=models.SET_NULL,
limit_choices_to={'enabled': True}
)
products/forms.py
user = self.request.user
provider = Provider.objects.filter(user=user).last()
self.fields['category'] = ModelMultipleChoiceField(queryset=provider.category.all())
cd_category = cleaned_data.get('category')
print("category", cd_category)
providers
class Provider(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
category = models.ManyToManyField(Category, related_name="provider")
Updated 4 March 2019, 15:59 by m0nte-cr1st0.