На сайте есть форма добавления объявления. У объявления есть поле категория. Так вот это поле сейчас в виде select, а мне нужно CharField.
class Subcategory(models.Model):
title = models.CharField(max_length=300, verbose_name=u'Подкатегории')
class Order(models.Model):
title = models.CharField(max_length=200, verbose_name=u'Название')
category = models.ForeignKey(Subcategory, verbose_name='Категория')
Я в forms.py сделал так:
class AddOrderForm(forms.ModelForm):
category = forms.CharField(max_length=300)
class Meta:
model = Order
fields = '__all__'
exclude = ['user','status','email','born','category']
В views.py делаю так:
def form_valid(self, form):
form.instance.user = self.request.user
form.instance.email = self.request.user.email
form.instance.category = self.request.POST['category']
self.object = form.save()
При сохранении выдает ошибку Cannot assign "u'\u0413\u0440\u0443\u0437\u043e\u043f\u0435\u0440\u0435\u0432\u043e\u0437\u043a\u0438, \u043b\u043e\u0433\u0438\u0441\u0442\u0438\u043a\u0430, \u0441\u043a\u043b\u0430\u0434\u0441\u043a\u0438\u0435 \u0443\u0441\u043b\u0443\u0433\u0438'": "Order.category" must be a "Subcategory" instance.