これがモデルです
class Question(models.Model):
question = models.CharField(max_length = 200)
questionbody = models.TextField()
author = models.ForeignKey(User)
tags = models.ManyToManyField(Tag)
timestamp = models.DateTimeField('question post date')
これはview.pyです
stags = request.POST['tag']
ltags = stags.split(',')
q = Question(
question = request.POST['question'],
questionbody = request.POST['questionbody'],
author = request.user,
timestamp = datetime.datetime.now()
)
q.save();
for i in ltags:
# print i ouyput:jquery
# print type(i) ouyput:unicode
# s = Tag.objects.get(name=i)
s = Tag.objects.get(name='jquery')
q.tags.add(s)
あなたが見ることができるように、「タグ」入力は「文字列、文字列」形式の文字列であるため、リスト(ltags)に変更します。
しかし、次のようなタグを追加しようとすると、forループで
s = Tag.objects.get(name=i)
質問すると、エラーが表示されます
" Tag matching query does not exist ".
しかし、s = Tag.objects.get(name='jquery') を使用すると機能します。
助けてください!