为了避免我的生产和开发实例之间的混淆(其中
DEBUG = True
),我想在开发中覆盖引导导航栏的CSS(仅)以显示例如红色而不是蓝色。
实现此目的最优雅的方法是什么?
我可以在任何地方覆盖
get_context_data()
以包含我的 settings.DEBUG
,或者从新生成的基类继承,但这看起来不太干燥。
您可以通过在基本模板中添加条件语句以在 DEBUG = True 时加载不同的 CSS 文件来实现此目的。这样,您就可以避免视图混乱或重复代码。只需使用您的调试样式创建一个新的 CSS 文件,并仅在 DEBUG = True 时将其包含在您的基本模板中。这种方法可以使您的代码保持干燥,并确保您的开发环境具有自己独特的样式。
您可以利用 django 调试上下文处理器,它允许您在每个模板中使用
debug
remplate 变量。
这个值等于
settings.DEBUG
,所以你可以用它来覆盖你的CSS,例如
{% if debug %}
<style>
.nav { background-color: red }
</style>
{% endif %}