gpt4 book ai didi

css - css 中的 django 变量 - 我可以使用模板吗

转载 作者:行者123 更新时间:2023-11-28 11:45:38 26 4
gpt4 key购买 nike

在我对 django 还很陌生之前写了很多 python,到目前为止我很喜欢它。

我以前的网络经验是使用 PHP,为了使我的 CSS 易于维护,我使用一个 php 文件作为我的 CSS 并将其作为 CSS 内容类型提供。因此,我可以制作可以轻松更改的变量,以更改站点中的所有内容。

例如样式.php:

<?php header('Content-type: text/css');

$pink = '#91305f';
$green = '#a4ce39';
$black = '#000000';
$white = '#ffffff';
$std_font = "'Ruda', sans-serif";
$std_shadow = "text-shadow: 1px 1px 1px #000;";
$big_shadow = "text-shadow: 2px 2px 2px #000;";
$h_space = '10px';
?>

和...

html {
background-color:<?= $pink ?>;
color: <?= $green ?>;
font-family: <?= $std_font ?>;
}

因此,如果我想更改黑色在我的整个站点中的含义,我只需更改顶部的 $black = 以及我的 CSS 中我说过颜色的所有位置:;将随之而来。

我想在 Django 中实现相同类型的东西,但不知道该怎么做。我在想我可以使用 View 在 css 中呈现模板,但不确定如何去做。是否就像在我的 View 中创建一个字典并将其传递给 render_to_response 然后在我的模板文件中引用它一样简单?

例如 View .py:

def style(request):
colours = {'pink' : '#91305f', 'green' : '#a4ce39'}
return render_to_response('styles.css', {'styles': colours},
context_instance=RequestContext(request))

然后,在 templates/styles.css 中:

html {
background-color:{{ styles.pink }};
color: {{ styles.green }};
}

这是可行的解决方案吗?如果是这样,我似乎正在将 View 耦合到模板,但我不知道我应该在哪里存储实现此目的所需的数据。

谢谢亚伦

最佳答案

如果我正确理解您的问题,您希望能够轻松更改整个站点的布局,而无需编辑所有样式表。在我看来,您不想使用内联样式和生成的 css,而是使用 SASS 或 LESS 并使用变量来设计颜色:

关于css - css 中的 django 变量 - 我可以使用模板吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11591508/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com