Django如何获取简单标签的值

How to obtain value for simple tags Django

大家好,我创建了第一个 simple_tag 传递值,但我无法获取值

在我的模板中我有这个,我必须传递的值是一个字符串 "footer1"

{% render_footer "footer1" %}

现在,我的功能是这样的

def render_footer(footer_opc):
  home = Page.objects.get_home()
  return home.homeextension.footer_opc

在那种情况下,我假设 footer_opc = "footer1" 所以 return 必须是 home.homeextension.footer1,但是不起作用,你也试试这个

def render_footer(footer_opc="footer1"):
  home = Page.objects.get_home()
  return home.homeextension.footer_opc

但是我得到了同样的结果.. 代码 return home.homeextension.footer_opc ,这个不存在...但我不知道要获取 footer_opc.

的值

我尝试 return 这个到 return home.homeextension.+ footer_opc 但结果相同。

任何想法!提前致谢!

此题与模板标签无关

要按名称从对象中获取属性,请使用 getattr

return getattr(home.homeextension, footer_opc)