使得在Django中使用pyscs更容易。
django-pyscss2的Python项目详细描述
django pyscss公司
使Django中的pyscs更容易使用的工具集合。在
注意
此版本仅支持pyScss 1.3.4及更高版本。对于pyscss1.2支持, 您可以使用django-pyscs的1.x系列。在
安装
django pyscs支持django1.4+和Pythons 2和3。在
您可以从PyPI安装django-pyscs:
pip install django-pyscss
为什么我们需要这个?
这个应用程序在处理Django中的pyscs时处理了很多事情。它
- 重写导入系统以使用Django的staticfiles应用程序。这边你 可以从任何应用程序(或 STATICFILES\u FINDERS)没有任何麻烦。在
- 配置pyscs以使用staticfiles应用程序的映像函数 (例如,内嵌图像和精灵地图)。在
- 它提供了一个django compressor预编译过滤器类,这样您就可以 轻松使用pyScss和django压缩机,而不必冲出去 壳牌。这还有一个好处,即不需要配置pyscs 通过它的命令行参数,使异常成为可能 以及pyScss发出的警告,以便您可以 知道发生了什么事。在
手动渲染scs
可以从如下字符串手动呈现SCS:
^{pr2}$可以从如下文件渲染SCS:
fromdjango_pyscssimportDjangoScssCompilercompiler=DjangoScssCompiler()compiler.compile('css/styles.scss')
文件需要能够被staticfiles finders找到,以便 用过。在
DjangoScssCompiler类是scss.Compiler的子类,它 注入DjangoExtension。DjangoExtension重写 导入机制。在
默认情况下,DjangoScssCompiler还打开CompassExtension,如果 希望关闭此功能,请执行以下操作:
fromdjango_pyscssimportDjangoScssCompilerfromdjango_pyscss.extensions.djangoimportDjangoExtensioncompiler=DjangoScssCompiler(extensions=[DjangoExtension])
有关DjangoScssCompiler接受的选项列表,请参阅 pyScssAPI documentation。在
与django压缩机一起使用
django-pyscss支持django压缩机。你要做的就是 将其添加到您的COMPRESS_PRECOMPILERS设置中。公司名称:
COMPRESS_PRECOMPILERS=(# ...('text/x-scss','django_pyscss.compressor.DjangoScssFilter'),# ...)
然后你可以像正常使用CSS一样使用scs。公司名称:
{%compresscss%}<linkrel="stylesheet"type="text/x-scss"href="{%static'css/styles.css'%}">{%endcompress%}
如果您希望提供自己的编译器实例(例如 更改DjangoScssCompiler)上的某些设置,可以子类 DjangoScssFilter。公司名称:
# myproject/scss_filter.pyfromdjango_pyscssimportDjangoScssCompilerfromdjango_pyscss.compressorimportDjangoScssFilterclassMyDjangoScssFilter(DjangoScssFilter):compiler=DjangoScssCompiler(# Example configurationoutput_style='compressed',)# settings.pyCOMPRESS_PRECOMPILERS=(# ...('text/x-scss','myproject.scss_filter.MyDjangoScssFilter'),# ...)
运行测试
您可以通过运行来运行测试。在
$ python setup.py test
请注意,这将作为 有些测试需要收集静态文件。在
变更日志
2.0.3(未发布)
- 什么都没变。在
2.0.2(2015-04-29)
- 修复了相对导入的错误[#34,#35 r1chardj0n3s]
2.0.1(2015-04-23)
- 显式地依赖于pathlib,而不是假设pyscs将需要它。【33】
- 修正了DEBUG为False但collectstatic尚未运行的情况(在测试中很常见)。在
2.0.0(2015-04-22)
- 增加了对pyscss1.3和python3的支持。在
- 放弃了对pyscss1.2的支持
升级路径
如果您只是使用django压缩机集成,则不必使用 升级任何东西。在
如果您直接使用DjangoScss类,则已将其替换为 DjangoScssCompiler类。用于编译CSS的API已更改为 好吧,例如,从一个字符串编译,以前你可以这样做 这个:
>>>fromdjango_pyscss.scssimportDjangoScss>>>compiler=DjangoScss()>>>compiler.compile(".foo { color: red; }")
现在界面是这样的:
>>>fromdjango_pyscssimportDjangoScssCompiler>>>compiler=DjangoScssCompiler()>>>compiler.compile_string(".foo { color: red; }")
您在pyScss API documentation上阅读了有关新API的更多信息。在
1.0.0-2014年2月11日
释放django Pyscs。在
- 项目
标签: