3 回答

TA貢獻(xiàn)1880條經(jīng)驗(yàn) 獲得超4個(gè)贊
用于:
{% with "shop/"|add:shop_name|add:"/base.html" as template %}
{% include template %}
{% endwith %}

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超4個(gè)贊
不要add用于字符串,您應(yīng)該定義一個(gè)自定義標(biāo)簽,如下所示:
創(chuàng)建一個(gè)文件: <appname>\templatetags\<appname>_extras.py
from django import template
register = template.Library()
@register.filter
def addstr(arg1, arg2):
"""concatenate arg1 & arg2"""
return str(arg1) + str(arg2)
然后像@Steven所說的那樣使用它
{% with "shop/"|addstr:shop_name|addstr:"/base.html" as template %}
{% include template %}
{% endwith %}
避免的原因 add
根據(jù)文檔
該過濾器將首先嘗試將兩個(gè)值都強(qiáng)制轉(zhuǎn)換為整數(shù)...可以強(qiáng)制轉(zhuǎn)換為整數(shù)的字符串將被求和,而不是串聯(lián)在一起 ...
如果兩個(gè)變量碰巧都是整數(shù),則結(jié)果將是意外的。

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超6個(gè)贊
我已經(jīng)更改了文件夾層次結(jié)構(gòu)
/shop/shop_name/base.html 轉(zhuǎn)到 /shop_name/shop/base.html
然后下面將工作。
{% extends shop_name|add:"/shop/base.html"%}
現(xiàn)在,它能夠擴(kuò)展base.html頁面。
- 3 回答
- 0 關(guān)注
- 2273 瀏覽
添加回答
舉報(bào)