使得在Django中使用pyscs更容易。

django-pyscss2的Python项目详细描述


django pyscss公司

使Django中的pyscs更容易使用的工具集合。在

Build StatusCoverage Status

注意

此版本仅支持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的子类,它 注入DjangoExtensionDjangoExtension重写 导入机制。在

默认情况下,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。在

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Android:应用程序崩溃发送putExtra的意图   JNI错误:尝试传递java实例。字符串作为参数   JavaJMockit与静态初始化   java@products@消费意义。。。JSON或者它只是一个字符串   java如何解决在命令提示符中找不到或加载主类错误?   java使用JavaMail API发送带有内联图像的电子邮件   java为什么我不能与Twitter共享内容   jspservlet正在显示java。木卫一。FileNotFoundException:?E:\guru99\test。txt(文件名、目录名或卷标语法不正确)   java如何在单击另一页上的按钮时向表视图添加数据?   java在提交表单数据之后,它显示了以下问题   java Spring启动通知/严重错误后重启   java从数组列表中删除元素   java Spring引导批处理:如何使用CompositeWriter和自定义ItemWriter实现多线程步骤   Spring java代码表单post和重定向到其他服务器