Eu preciso concatenar duas strings dentro de uma tag estática, verifiquei a pergunta anterior sobre como concatenar strings no modelo django e encontrei esta resposta, mas quando usei essa solução, o broser (Firefox) não mostra a imagem.
Detalhes: Este é o meu código, suponha que o valor de user.if seja 1:
{% with "images/my_twitter_wordcloud_"|add:user.id|add:".png" as image_static %}
<center>
<img src="/images/{% static "image_static" %}" width="650" height="350" style="margin-left: 10%;"/>
</center>
{% endwith %}
Quando verifiquei o inspetor no navegador, ele mostrou a imagem assim:
<img src="/images//static/image_static" style="margin-left: 10%;" height="350" width="650">
Eu acho que deveria ser:
<img src="/images//static/images/my_twitter_wordcloud_"|add:user.id|add:"png" style="margin-left: 10%;" height="350" width="650">
Eu verifiquei a documentação do django sobre adicionar referência e tentei usar "" e "" após adicionar, mas parece que o django não interpreta a variável, o que estou fazendo de errado?
Obrigado pela ajuda. PD: peço desculpas pelo meu inglês.
Editar: Fazendo o que o @Selcuk disse, o inspetor me mostrou o seguinte:
<img src="/images//static/.png" style="margin-left: 10%;" height="350" width="650">
É estranho, mesmo que eu use "" em vez de "", então não entendo o que está errado, se eu colocar isso (onde o valor de user.id é 1):
<center><img src="/images/{% static "images/my_twitter_wordcloud_1.png" %}"
Mostra a imagem corretamente.
Respostas:
0 para resposta № 1Remova as aspas ao redor image_static
e use o nome da variável Ou seja, substitua o seguinte:
{% static "image_static" %}
com isso
{% static image_static %}
Como observação, você também deve incluir um ponto (.
) antes da extensão da imagem (png
).