我是django的新手,所以可能不知道smth,但我通过谷歌搜索并没有得到任何答案。 我有这样的模特:
class Word(models.Model):
word = models.CharField(max_length=100)
img = models.ImageField(upload_to='img/', blank=True, null=True)
audio = models.FileField(upload_to='audio/', blank=True, null=True)
language = models.ForeignKey(Language)
def __unicode__(self):
return self.word
class Lesson(models.Model):
title = models.CharField(max_length=100)
language = models.ForeignKey(Language)
lesson_words_list = models.ManyToManyField(Word)
def __unicode__(self):
return self.title
我在视图中有下一个功能:
def view_lesson(request, language, lesson_title):
cur_lesson = Lesson.objects.filter(title__iexact = lesson_title).get(language__name__iexact=language)
words_list = cur_lesson.lesson_words_list.all()
return render_to_response("view_lesson.html", {"language":language, "lesson_title": lesson_title, "words_list":words_list})
这是我在模板中如何称呼它:
{% for Word in words_list %}
{{ Word.word }}
{% endfor %}
问题是words_list是空的,而通过管理员我清楚地看到我的课程有相关的单词。 为什么它可能是空的?我应该在哪里寻找答案?
答案 0 :(得分:2)
是
{{ cur_lesson }}
在模板中显示正确的课程?
尝试:
{% for word in cur_lesson.lesson_word_list.all %}
{{ word }}
{% endfor %}
另见
{{ cur_lesson.lesson_word_list.all }}
在模板中显示正确的单词列表