This is an old trick, that's been very handy :) .
Many times for various reasons you'll need to access your media files from your Javascript files, to display images, change paths, or whatever. And in most cases your development MEDIA_URL
and production MEDIA_URL
will be different, so having to change them depending on the enviroment can be a bit tricky being them static files I'm assuming you are using static files your your .js right?.
What I do to help this is add the following to my base.html :
<script type="text/javascript">
var MEDIA_URL = "{{MEDIA_URL}}";
</script>
before I load any of my .js files, and in them I simply refer to the MEDIA_URL
variable just as in my Django templates.
Of course, you need to have your settings.MEDIA_URL
variable on template context via whatever method you feel mor confortable with, personally I use context_processors :) .
Comments
#240498" title="2008-12-01 11:15:28">Walter Cruz: Hi. In a post here (http://www.fairviewcomputing.com/blog/2008/04/16/django-geography-hacks/) you talk about a geo plugabble app. Have you done that?
#240606" title="2008-12-01 20:02:57">Jj: Contact me if you're interested, I could send you the code and probably we could work together
#355475" title="2010-11-23 07:49:26">Abhas: On doing this I get an error MEDIA_URL is undefined inspite of the declaration.I would appreciate any help on the matter.