处理用户自定义样式的最佳方法是什么?正如我正在寻找的结果的一个例子,这就足够了:
body {
color: {{ user.profile.text_color }};
}
然而,将CSS作为视图提供似乎会导致不断请求的文件中的大量开销,因此这可能不是一个好的解决方案。
用户无权访问CSS文件,我们必须假设他们没有Web开发知识。
答案 0 :(得分:15)
然而,将CSS作为视图提供似乎会导致不断请求的文件中的大量开销,因此这可能不是一个好的解决方案。
如果你要生成一次CSS怎么办?
/common/css.css
<link />
元素指向/user-specific/123.css?ts=123123123
。 123
当然是成员的标识符,ts
参数包含时间戳 - 上次修改CSS的日期304 Not Modified
标题 - 不需要任何脚本执行或内容下载ts
- 再次只需要一个请求答案 1 :(得分:5)
通过视图动态地执行CSS,但使用激进的caching以便快速加载。
答案 2 :(得分:0)
你可以尝试django mediagenerato,实际上我读了这个Q而我正在寻找像你一样的解决方案,然后我发现Django-mediagenerator
我还没有尝试过,但接缝是一个解决方案。