2012-07-30 72 views
1

今天重新安装了所有的Python库之后,我发现我的.eco文件没有被Pipeline编译,即使Django Spine的EcoCompiler类的compile_file被调用了每个.eco文件。Django Pipeline没有编译.eco文件

为什么没有编写任何编译后的.eco文件(输出为.js文件)?

回答

1

Django Spine 0.3.2(截止撰写本文时)预计会有一个旧版本的Pipeline(当前版本:1.2.13,对于Django Spine 0.3.2:1.2.10是必需的),它实际上将编译文件写入硬盘本身:

pipeline.compilers.__init__ 1.2.10版本,行36 - 38:

compiler.compile_file(infile, outfile, outdated=outdated, force=force) 

content = self.read_file(path) 
compiled_content = compiler.compile_file(content, finders.find(path)) 
self.save_file(new_path, compiled_content) 

与1.2.13版本pipeline.compilers.__init__ 38行比较

请注意,如何调用compile_file的参数非常不同。如果您检查current source,您会注意到管道根本不会拨打save_file

总之,只要做到这一点,直到Django的脊柱& Django的管道在这个问题上一致:

pip uninstall django-pipeline 
pip install django-pipeline==1.2.10 
+1

确认:https://github.com/ikeikeikeike/django-spine/issues/6 – cyberdelia 2012-07-30 15:58:12

+1

我提交一个类似的问题,但我会删除我的,因为你的信息更丰富。 – thure 2012-07-30 16:01:58