Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Django string concatenation inside template tag best practice

I'm trying to concatenate some strings to format a URL inside my template tag, but I don't find an elegant way.

So far, what I have is:

{% button "Activate" "http://" site.domain url 'registration_activate' activation_key %}

Is there any best practice to make it a bit more "readable"?

Thanks a lot

like image 675
jhagege Avatar asked Dec 30 '14 16:12

jhagege


2 Answers

You can concatenate two strings in Django template as follows:

{{"First String "|add:"Second String"}}

Just replace the two strings with your own variable.

like image 100
Zahid Sumon Avatar answered Nov 02 '22 21:11

Zahid Sumon


What I use when I want to concatenate strings in Django templates from variables (examples taken from my own code, tell me if you need something closer to your case):

<html>
<input id="myid_{{idBase}}_{{idFinal}}" type="checkbox"></input>
</html>

and inside a django tag, I use the keyword "add" associated with the keywork with

{% with 'images/'|add:file_name as image_static %}
     <img src="{% static image_static %}" title = "{{ tooltip }}"  alt = "{{ title }}"/>
{% endwith %}
like image 35
Julien Greard Avatar answered Nov 02 '22 21:11

Julien Greard