[英]Variable in a Variable in Django Template
我可以從每個 HTML 文件訪問全局變量。 該變量稱為canAccessClients
。 它是登錄用戶有權訪問的對象(客戶端)列表。 它主要用於菜單,因此用戶只能看到他的客戶。 我可以通過canAccessClients.<some_index>.picture.url
找到客戶的標志(它的 url)。
現在,我有一頁只有一些客戶。
我知道這些客戶的 ID。
此客戶端 ID 顯然與canAccessClients
列表中的索引canAccessClients
。
因為canAccessClients
只是客戶端對象的列表。
現在我需要為我知道他的 ID 的同一個客戶顯示徽標。
我通過查找迭代canAccessClients
並尋找所需的 ID 來做到這一點(可能是個壞主意,但有效)。
{% for client in canAccessClients %}
{% if client.id == client_data.CLIENT_ID %}
<img class="client-menu-logo" src="{{ canAccessClients.{{ forloop.counter }}.picture.url }}" alt="logo">
{% endif %}
{% endfor %}
一切正常並且沒問題,但是...我需要將forloop.counter
變量傳遞給canAccessClients.<some_id>.picture.url
,這不起作用。
如何在這樣的路徑中的其他變量中使用變量?
您可以編寫自己的模板標簽來實現這一點。 例子:
@register.simple_tag
def get_image_url_by_id(id):
url = Client.objects.get(pk=id).image_url # get image url from database
return url
並在模板中:
{% with get_image_url_by_id forloop.counter as image_url %}
{{ image_url }}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.