Skip navigation

Tag Archives: django

I just read Joshua Jonah’s post about Limiting HTTP requests with Django.  The gist is that he’s starting to get worried about all the different <link rel='stylesheet'>‘s and <script src='/some/js'>‘s in his document <head>, and we all know that each of those generates a separate HTTP request which will slow down your page’s load time.

My technique uses a view that builds a JS/CSS file with Django. The CSS/JS files that are compiled like this should be stored in your templates directory instead of your static media folder so they are accessible to the view…

…This allows you to used [sic] Django template language in your CSS files.

And I had an ah-HA! moment.  Could this be the way to use variables in your CSS files?  Having a view that defines a bunch of colors:

def buildcss(request):
…snip…
linkColor = ‘#999’
linkHoverColor = ‘blue’

and passing that into the template that generates your CSS

a {
color: {{ linkColor }};
}

a:hover {
color: {{ linkHoverColor }};
}

Now, you probably don’t want have Django performing doing this kind of work for every request, so you might want to cache the URL that generates your CSS.  And I’m not sure if there are other downsides to this I haven’t considered, but it’s interesting to think about.

Was installing Django on a webserver recently, and something bit me.  I kept getting the following error:


MOD_PYTHON ERROR
...snip a whole buncha stuff...
ImportError: No module named django.core.handlers.modpython

I’d installed Django into my home directory, but the user that the webserver runs as didn’t have read access to that location.  Problem was solved by putting Django into a place where apache could get at it.