Я пытаюсь сохранить как данные FK, так и теги в одной модели. ФК это пользователь. Пользователь должен отправить вопрос и теги, такие как переполнение стека. но я не могу спасти их обоих. это выглядит проблемой на мой взгляд. Не могли бы вы помочь.
ValueError в / qanda / askquestion / Вопрос объекты должны иметь значение первичного ключа, прежде чем вы сможете получить доступ к их тегам. Метод запроса: URL запроса POST: http://127.0.0.1: 8000 / qanda / askquestion / Django Версия: 2.2.4 Тип исключения: ValueError Значение исключения:
Объекты вопроса должны иметь значение первичного ключа прежде чем вы сможете получить доступ к их тегам. Местоположение исключения: /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/taggit/managers.py в get , строка 424 Python Исполняемый файл : /Library/Frameworks/Python.framework/Versions/3.7/bin/python3.7 Python Версия: 3.7.4 Python Путь:
['/ Users / SRIRAMAPADMAPRABHA / Desktop / IampythonDEV / iam python ',' /Library/Frameworks/Python.framework/Versions/3.7/lib/python37.zip ',' /Library/Frameworks/Python.framework/Versions/3.7/lib/python3 .7 ',' /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/lib-dynload ',' /Users/SRIRAMAPADMAPRABHA/Library/Python/3.7/lib/python/site -packages ',' /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages']
Models.py
class Question(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
question_number = models.AutoField(primary_key=True)
question_category=models.ForeignKey(Question_Category,related_name='questioncategory',on_delete=models.CASCADE)
question_title=models.CharField(max_length=250)
question_slug = models.SlugField(unique=True, max_length=250)
question_description=RichTextField()
question_tags = TaggableManager()
question_posted_at=models.DateTimeField(default=datetime.now,blank=True)
question_status= models.IntegerField(choices=STATUS, default=1)
question_updated_on= models.DateTimeField(auto_now= True)
def __str__(self):
return self.question_title
views.py
@login_required
def createQuestion(request):
if request.method == 'POST':
form = QuestionAskForm(request.POST)
if form.is_valid():
new_question=form.save(commit=False)
question_title = request.POST['question_title']
new_question.slug = slugify(new_question.question_title)
new_question=request.user
new_question.save()
form.save_m2m()
messages.success(request,'You question is succesfully submitted to the forum')
return redirect('feed')
else:
form = QuestionAskForm()
return render(request,'qanda/askyourquestion.html',{'form':form})
Я хочу отправить как внешний ключ, так и а также тег для базы данных. Я не могу сделать теги. Пожалуйста, поделись своими мыслями?