185
You should be able to concatenate strings with the add
template filter:
{% with 'assets/flags/'|add:request.LANGUAGE_CODE|add:'.gif' as image_static %}
{% static image_static %}
{% endwith %}
What you are trying to do doesnβt work with the static
template tag because it takes either a string or a variable only:
{% static "myapp/css/base.css" %}
{% static variable_with_path %}
{% static "myapp/css/base.css" as admin_base_css %}
{% static variable_with_path as varname %}
41
For what itβs worth, I think this is the easiest way:
<img src="{% static 'assets/flags/'|add:request.LANGUAGE_CODE|add:'.gif' %}" ... >
This is and old question and Iβm not sure if this method could be done back then, But now, in Django 2.0 this seems to work fine for me.
- [Django]-Django upgrading to 1.9 error "AppRegistryNotReady: Apps aren't loaded yet."
- [Django]-Suppress "?next=blah" behavior in django's login_required decorator
- [Django]-Python Asyncio in Django View
31
a cleaner way is to set the {% static %} as a variable from the beginning of the html so we can use it in any way we want.
{% load static %}
{% static "" as baseUrl %}
<img src="{{ baseUrl }}/img/{{p.id}}"></img>
- [Django]-Django β How to pass several arguments to the url template tag
- [Django]-How to check if a user is logged in (how to properly use user.is_authenticated)?
- [Django]-Get class name of django model
24
I got this to work by using an empty string for the static path and then using my variables in their own section, like this:
<a href= "{% static "" %}{{obj.a}}/{{obj.b}}/{{obj.c}}.gz" >Name</a>
- [Django]-Django Sitemaps and "normal" views
- [Django]-How to Unit test with different settings in Django?
- [Django]-Easiest way to rename a model using Django/South?
15
@rounin, you can, at least, use
{% get_static_prefix %}
which will be loaded when you {% load static %}. Itβs just more natural then {% static β %}
- [Django]-Celery. Decrease number of processes
- [Django]-OneToOneField() vs ForeignKey() in Django
- [Django]-Django dump data for a single model?
0
Just put the variables outside of the tag:
src="{% static 'directory/' %}{{filename}}.{{fileextension}}"
Result: "directory/filename.fileextension"
Example Result: "directory/bird.jpg"
- [Django]-Why won't Django use IPython?
- [Django]-Can we append to a {% block %} rather than overwrite?
- [Django]-How to add url parameters to Django template url tag?