我想在模型Notifications from models.py中包含每个通知的标题和消息。我不想改变每一个views.py,我必须这样做。我知道可以使用{% request.user.name %}标记来获取用户的详细信息,但如何使用另一个随机模型来实现这一点?
我已经尝试了一些东西。这些是我创建/更改的文件,试图做到这一点。(home
是我的应用程序的名称)home/templatetags/__init__.py
from .custom_tags import register
home/templatetags/custom_tags.py
from django import template
from home.models import Notifications
register = template.Library()
@register.simple_tag
def notifications():
data = Notifications.objects.all()
return data
home/templates/base.html
{% load custom_tags %}
<html>
<head><!-- Some code here --></head>
<body>
<!-- Some more code here -->
{% notifications %}
{% for notification in notifications_list %}
{{ notification.title }}
{% endfor %}
</body>
在base.html
中,线{% notifications %}
显示<QuerySet [<Notifications: Notifications object (1)>]>
。但其他的线路什么都不做。
有谁能告诉我我做错了什么吗?
1条答案
按热度按时间6ojccjat1#
一种解决方案是在自定义标记内呈现HTML,并返回一个属于该标记的小HTML模板:
在base.html中,然后用途: