THIS PACKAGE IS NOT MAINTAINED.
Please use django-static-precompiler
Django CoffeeScript provides template tags to compile CoffeeScript into JavaScript from templates. It works with both inline code and extenal files.
- Add
"coffeescript"
toINSTALLED_APPS
setting. - Make sure that you have
coffee
executable installed. See CoffeeScript official site for details. - Optionally, you can specify the full path to
coffee
executable withCOFFEESCRIPT_EXECUTABLE
setting. By default it's set tocoffee
. - In case you use Django’s staticfiles contrib app you have to add django-coffeescript’s file finder to the
STATICFILES_FINDERS
setting, for example :
STATICFILES_FINDERS = ( 'django.contrib.staticfiles.finders.FileSystemFinder', 'django.contrib.staticfiles.finders.AppDirectoriesFinder', # other finders.. 'coffeescript.finders.CoffeescriptFinder', )
{% load coffeescript %} <script type="text/javascript"> {% inlinecoffeescript %} console.log "Hello, World!" {% endinlinecoffeescript %} </script>
renders to
<script type="text/javascript"> (function() { console.log("Hello, World!"); }).call(this); </script>
{% load coffeescript %} <script type="text/javascript" src="{{ STATIC_URL}}{% coffeescript "path/to/script.coffee" %}"> </script>
renders to
<script type="text/javascript" src="/media/COFFEESCRIPT_CACHE/path/to/script-91ce1f66f583.js"> </script>
Note that by default compiled files are saved into COFFEESCRIPT_CACHE
folder under your STATIC_ROOT
(or MEDIA_ROOT
if you have no STATIC_ROOT
in your settings).
You can change this folder name with COFFEESCRIPT_ROOT
and COFFEESCRIPT_OUTPUT_DIR
settings.
COFFEESCRIPT_EXECUTABLE
- Path to CoffeeScript compiler executable. Default:
"coffee"
. COFFEESCRIPT_ROOT
- Controls the absolute file path that compiled files will be written to. Default:
STATIC_ROOT
. COFFEESCRIPT_OUTPUT_DIR
- Controls the directory inside
COFFEESCRIPT_ROOT
that compiled files will be written to. Default:"COFFEESCRIPT_CACHE"
. COFFEESCRIPT_USE_CACHE
- Whether to use cache for inline scripts. Default:
True
. COFFEESCRIPT_CACHE_TIMEOUT
- Cache timeout for inline scripts (in seconds). Default: 30 days.
COFFEESCRIPT_MTIME_DELAY
- Cache timeout for reading the modification time of external scripts (in seconds). Default: 10 seconds.