【问题标题】:Best method for adding compass to a django project将指南针添加到 django 项目的最佳方法
【发布时间】:2012-04-13 00:14:42
【问题描述】:

compasssusyblueprint 集成到django 项目中的首选或最佳方法是什么?

【问题讨论】:

    标签: django compass-sass blueprint-css


    【解决方案1】:

    我们选择避免​​自动运行时 sass/compass 编译,而是在开发中简单地使用“compass --watch”并将 Sass 和生成的 CSS 提交到存储库。那么你的 Django 项目中根本不需要特殊的机器;您只需像往常一样处理 CSS 文件。

    这对我们有几个好处:

    • 从我们的部署和生产服务器基础架构中移除一整块额外的移动部件:无需在我们的生产服务器上拥有完整的 Ruby 堆栈,以及 Sass、Compass 和任何其他必需的 gem。使生产服务器更简单是一件非常好的事情。此外,部署到纯 Python 托管也没有问题。
    • 由于 Compass 插件 gem 版本之类的细微差异,一个开发人员与另一个开发人员之间或开发与生产之间没有神秘的细微显示不一致。每个人都看到相同的 CSS。开发人员的 Compass 环境之间的差异会很快被发现,因为它们会立即显示为生成的 CSS 的预提交差异中的意外更改。

    当然,缺点是将生成的代码提交到 repo,这通常是不受欢迎的。不过,我们还没有看到任何实际问题。没有人想直接编辑生成的 CSS;我们都知道我们使用指南针。对我们来说,优势肯定大于劣势——我们从未有过切换到像 django-css 这样的集成方法的丝毫诱惑。

    【讨论】:

    • 这对于设计师/前端开发人员来说也很棒。我可以完全控制 CSS 生成过程,而无需接触服务器。我做我的事,提交它,它就会奏效。
    • 指南针博客上的扩展答案:compass-style.org/blog/2011/05/09/compass-django
    【解决方案2】:

    最好的办法是使用 django-css,它是 django-compressor 的一个分支,它也可以对 SASS 进行 css 编译。插入后,您可以正常使用 compass、susy 和 blueprint,只要 django 检测到源文件的更新版本,它们就会被编译。

    编辑:如果您在 ep.io 等纯 Python 主机上进行部署,您将需要研究将这些构建到cleverCSS(纯python SASS&SCSS 编译器)中的难易程度

    编辑 2:

    此信息已过时。 django-compressor 现在是最好的选择,因为它内置了预处理工具,它也可以为你打包文件;)

    【讨论】:

    • @patrick 这是不正确的,CleverCSS 是 SASS 的纯 Python 替代品,而不是它的替代编译器。
    猜你喜欢
    • 2015-02-21
    • 2012-09-12
    • 1970-01-01
    • 1970-01-01
    • 2011-01-21
    • 1970-01-01
    • 2011-09-30
    • 2012-02-02
    • 1970-01-01
    相关资源
    最近更新 更多