django-compressor、LESS、相对@import 和相对 url()

标签 django less django-compressor

我正在使用 django-compressor + LESS。

我有亲戚问题 @import在 .less 文件和相关文件中 url(../image.png)内含 .less文件。

我会解释。我有下一个文件夹结构:

common/  # Django app with some common stuff, e.g. common button styles
   static/
     common/
       less/buttons.less
       img/icon.png
blog/
  static/
    blog/
      less/blog_buttons.less

buttons.less我有按钮的混合:
.button() {
    color: white;
    padding: 4px 10px;
    background: gray url(../img/icon.png) no-repeat 0 0;
}

blog_buttons.less我使用这个混合:
@import "../../../../common/static/common/less/buttons";

.blog_button {
    .button;
    background-color: orange;
}

这是问题所在:

当 django-compress 预编译我的 blog_buttons.less - 按钮背景指向/static/blog/img/icon.png (404 未找到)。但它应该指向/static/common/img/icon.png
难道我做错了什么? (我觉得应该是一种很常见的情况)

最佳答案

如果您的静态路径配置正确,您应该能够同时处理 common/staticblog/static好像它们是同一个文件夹。你的导入语句应该是这样的:

@import "../../common/less/buttons";

关于django-compressor、LESS、相对@import 和相对 url(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14843023/

相关文章:

html - 将 html 文件、css 文件、几个 javascript 文件和一些图像添加到 django 代码中?

css - Less - :hover and another element that depends on it 上元素的动态宽度

ruby-on-rails - rails 3.2 LESS CSS 和 heroku?

Django 压缩机不使用设置中的 STATICFILES_FINDER

Sass 的 Django_compressor 错误。不能@import 文件

django - Django表单集中的水平(每行)表单

django - 如何在开发下一个版本的同时运行一个版本的 Web 应用程序?

django - 从 DetailView 获取 pk 以进行 lte/gte 比较 (Django)

html - CSS last-child 选择器不工作

python - 在设置中使用 debug=false 的 Django-Compress 给出错误