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)
大家好,我创建了第一个 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)