Django + twitter bootstrap + github最优雅的方法是什么?

让我们假设我有一个项目或2我正在使用Django和Twitter bootsrap建设。所述项目在git存储库中进行版本控制。

目前,我和大多数人一样,会(或会)刚刚下载的引导,做一些cp -rgit add命令,并愉快地离开代码。

但是现在我不再思考了。

  • 一切都在git上。

  • git支持subrepos。

  • Django有collectstatic

  • 这是2013年,持续集成等。是这十年的流行语

因此:必须有一个更优雅和简单的美好这样的方式作为一切,我会做将是一个可怕的违反DRY


ITMISS
浏览 181回答 2
2回答

慕的地10843

这可能并不完全是您想要的,因为此策略中有一个丑陋的部分,但是值得一提的是恕我直言。概述在浏览器中以调试模式进行较少的编译以进行开发。这使您的集成商可以更快地工作,并可以在浏览器中查看语法错误报告,并使开发过程更加出色。使用django-compressor进行生产,将您所需要的全部内容预编译为CSS并提高性能。能够在更少的脚本中重用:引导类,变量等,等等……还有什么不好用的呢?问题在于,您必须让编译器在同一运行中同时编译引导程序和您自己的较少脚本。Django级别的基本策略这是您的site_base.html模板可以包含的方式:{% if debug %}    <link rel="stylesheet" type="text/css" href="{% static 'autocomplete_light/style.css' %}" />    <link href="{{ STATIC_URL }}bootstrap/less/bootstrap.less" charset="utf-8" type="text/less" rel="stylesheet">    <script type="text/javascript">less = {}; less.env = 'development';</script>    <script type="text/javascript" src="{{ STATIC_URL }}less.js" ></script>{% else %}    {% compress css %}    <link rel="stylesheet" type="text/css" href="{% static 'autocomplete_light/style.css' %}" />    <link href="{{ STATIC_URL }}bootstrap/less/bootstrap.less" charset="utf-8" type="text/less" rel="stylesheet">     {% endcompress %}{% endif %}如您所见,您需要调试上下文处理器。您的设置如下所示:COMPRESS_PRECOMPILERS = (    ('text/less', 'recess --compile {infile} > {outfile}'),)注意:当我这样做时,引导程序仅在较少嵌入式编译器上编译。也许现在支持其他编译器,但我不会打赌。基本的git策略要直接从其仓库中重新使用引导程序,请使用git submodules。较低层次的基本策略假设我们创建了一个custom.less脚本,该脚本应该能够重用引导程序的内容,即。变量,类,mixin等。现在,我们遇到了一个问题:编译器必须同时解析两个引导程序的内容custom.less。否则,编译器在编译时如何知道引导程序的变量custom.less?所以,你可以导入custom.less中bootstrap.less,但会导致您的回购之外的文件的修改(记住:bootstrap.less来自一个子模块)。解决方案:创建master.less同时导入bootstrap/less/bootstrap.less和的custom.less。不要忘了链接master.less而不是bootstrap.less在您的site_base.html。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python