And*_*art 14 windows django coffeescript
虽然无论平台如何开始使用Sass/Compass和Django 都不是那么容易,但是在Windows开发盒上找到了使用CoffeeScript和Django的最佳方法.
And*_*art 25
自从我发布原始答案(我将出于历史目的而离开)以来,Windows上的节点支持已经大大改进,所以现在让它更容易实现.
使用Windows安装程序下载并安装Node.您可以自动将命令node和npm命令添加到Windows PATH(在cmd.exe中可用).
安装CoffeeScript : npm install -g coffee-script. 然后只是为了测试,使用cmd.exe ...
coffee --version
CoffeeScript version 1.4.0 #sweet!
安装django-compressor : pip install django-compressor.
添加到您的settings.py所以django-compressor将预编译您的CoffeeScript.
COMPRESS_PRECOMPILERS = (
    ('text/coffeescript', 'coffee --compile --stdio'),
)
利润!现在在Django模板中使用*.coffee文件或内联CoffeeScript,并将其自动编译为javascript,并将其他脚本与单个压缩文件结合使用.
示例(取自django-compressor docs):
{% load compress %}
{% compress js %}
<script type="text/coffeescript" charset="utf-8" src="/static/js/awesome.coffee" />
<script type="text/coffeescript" charset="utf-8">
  # Functions:
  square = (x) -> x * x
</script>
{% endcompress %}
原始答案(已废弃):
目标是能够在Django模板内部编写CoffeeScript并使其自动转换为Javascript(以及.coffee文件).django-compressor有一个预编译器可以执行此操作,在文件压缩之前,它最适合.
当然问题是你想使用Windows(你怎么了?),并且预编译器假设你有一个典型的Linux安装的node.js和coffee-script,能够从命令行调用'coffee'及其所有的标准选项.要获得相同的功能Windows(不使用cygwin),您只需制作一个.bat文件:
获取最新的Windows二进制节点
在Windows系统环境变量中将包含node.exe的路径添加到PATH
选择以下之一:
鉴于npm不适用于Windows,您可以使用ryppi(一个最小的Python节点包管理器)来安装coffee-script包.将ryppi.py放在Python脚本文件夹中.
cd /d C:\Users\<USERNAME>\  #'node_modules' folder can live here or wherever
ryppi.py install coffee-script
只需从主站点下载咖啡脚本即可
在Windows系统环境变量中将路径\添加到\ coffeescript\bin(包含'cake'和'coffee')到PATH
创建一个批处理文件,这样你就可以在命令行中使用'coffee'(相信这个),方法是在上面的path\to\coffeescript\bin文件夹中创建一个coffee.bat文件,其内容如下:
@pushd .
@cd /d %~dp0
@node coffee %*
@popd
如果没有这个,你必须做'node\path\to\bin\coffee'而不仅仅是'coffee'.
尝试重新打开cmd.exe并输入...
coffee --version
CoffeeScript version 1.1.2  #sweet!
现在你在节点上使用真正的咖啡脚本程序.
设置django-compressor预编译器以使用coffee.bat:
COMPRESS_PRECOMPILERS = (
    ('text/coffeescript', 'coffee.bat --compile --stdio'),
)
我把它放在我的local_settings.py文件中.只需像往常一样在Linux生产服务器或开发盒使用的设置文件中关闭.bat.没有.bat,Windows并不开心.
利润!
现在,您可以在Django模板中使用内联CoffeeScript,并将其自动编译为javascript,并将所有其他脚本组合到一个压缩的.js文件中.我将把django-compressor的详细信息留给它的文档.