You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Django自定义Shamsi日期simple_tag无输出问题求助

解决Django自定义simple_tag无输出问题

核心问题:模板调用语法错误

你的模板里用了变量语法{{ shamsi_date }}来调用simple_tag,但simple_tag属于模板标签,必须使用标签语法{% shamsi_date %}。修改index.html对应代码:

{% load shamsi_tags %}
...
<div>{% shamsi_date %}</div>
...

额外排查项(如果修改后仍无输出)

  • 确认homepage已添加到项目settings.py的INSTALLED_APPS列表中:
    INSTALLED_APPS = [
        ...
        'homepage',
        ...
    ]
    
  • 检查templatetags目录下的__init__.py是否存在(空文件即可),确保Python将该目录识别为合法包。
  • 重启Django开发服务器,避免模板或标签缓存导致的不生效。
  • 可以在shamsi_date函数中添加调试输出,验证标签是否被执行:
    @register.simple_tag
    def shamsi_date():
        now = datetime.now()
        shamsi_date = jdatetime.fromgregorian(now.year, now.month, now.day)
        result = shamsi_date.strftime('%Y/%m/%d')
        print(result)  # 查看控制台是否输出波斯历日期
        return result
    

内容的提问来源于stack exchange,提问作者Omid Shojaee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.24 03:52:01