我想用Django在我的网站上做一个布告栏,所以我做了一个这样的模型:
class notice(models.Model):
# the title of the notice
text = models.CharField(max_length = 50)
date_added = models.DateTimeField(auto_now_add = True)
def __str__(self):
return self.text
我这样写了“views.py”(主要部分):
def notices(request):
# display the notice title
notices = notice.objects.order_by("date_added")
context = {"notice": notices}
return render(request, "index.html", context)
但是在“index.html”文件中,当我编写这些代码时:
<ul>
{% for n in notices %}
<li>{{n.text}}</li>
{% endfor %}
</ul>
什么都没有显示。有谁知道如何解决这个问题?如果你能帮助我,我将不胜感激。
嗯……我的英语真的很差,如果我说的有点不礼貌……你能原谅我吗?谢谢!
更新:
感谢 Biplove Lamichhane 的回答!这就是它在运行 Django Shell 时所说的:
Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
(InteractiveConsole)
>>> from wl.models import *
>>> notice.objects.order_by("date_added")
<QuerySet [<notice: testing>]>
在“index.html”中:
<ul>
{% for n in notices %}
<li>{{n}}</li>
{% endfor %}
</ul>
在“views.py”中:
def notices(request):
# display the notice title
notices = notice.objects.order_by("date_added")
context = {"notices": notices}
return render(request, "index.html", context)
不过,什么也没显示。