jazzband / django-floppyforms

Full control of form rendering in the templates.
http://django-floppyforms.readthedocs.org/
Other
839 stars 145 forks source link

STATIC_URL not defined in templates #175

Open tisdall opened 8 years ago

tisdall commented 8 years ago

I'm trying to use the map widget and I noticed in the template {{ STATIC_URL}}. It seems that only gets added if you add django.template.context_processors.static to your context processors. The Django docs seems to suggest using the static tag which doesn't require the context processor.

So instead of: background-image: url("{{ STATIC_URL }}floppyforms/gis/img/move_vertex_on.png");

it should be: background-image: url("{% static "floppyforms/gis/img/move_vertex_on.png" %}"); with {% load static %} up at the top.

So, I guess you could leave it as, but I didn't notice anything in the docs saying that you needed to have the above mentioned context processor added for some of the default templates to work. The static tag works without any changes to settings.

gregmuellegger commented 8 years ago

Yes, you are right. The {% static %} approach is prefered over the one using the context processor. floppyforms comes from an age where only {{ STATIC_URL }} existed.

We should start dropping the support for those ancient releases.

I'm happy to accept a Pull Request that changes the static use, if you like to prepare one.

tisdall commented 8 years ago

I'm a little confused about compatibility with older releases... The context processor you included in your tests seems to have been added in 1.8 (looking at github, it seems they used to be in django.core.context_processors). How are the tests passing for version 1.4 - 1.7 if they're including context processors that aren't there? (I'm referring to them being referenced in tests/settings.py)