這裏是場景:我的LESS @import路徑應該是什麼?
我正在運行Django 1.3.1,利用staticfiles和django-compressor(最新穩定版)來編譯LESS文件。
我的影片勾搭成staticfiles與STATICFILES_DIRS
(項目範圍內的靜態資源)的「資產」目錄。在那個目錄中我有一個「css」目錄,並且在那個包含LESS變量和mixins的「lib.less」文件中。
所以物理路徑是<project_root>/assets/css/lib.less
而且它在/static/css/lib.less
服務。
在我的應用靜態目錄之一,我有一個需要導入上述彼此LESS文件。物理路徑是<project_root>/myapp/static/myapp/css/file.less
,它將在/static/myapp/css/file.less
服務。
我的第一個想法是:
@import "../../css/lib.less"
(即基於URL,從/static/myapp/css
上去水平/static/
,然後遍歷下來到/static/css/lib.less
)。
但是,這是行不通的,我已經嘗試了幾乎所有的URL和物理路徑的組合,我可以想到它們全都給了我s在模板中,由於無法找到文件來導入。
任何人都有什麼想法的實際進口路徑應該是什麼?
Blah!我想我必須這樣做...我的本地開發編譯器不知道django的靜態文件..所以,即使我修改了我的工作流以在本地運行collectstatic,我的編譯器也會修改/ static/dir中的文件。有點不幸。你最終仍然使用靜態文件的一切,但CSS? –
我最終將我的較少文件移動到'assets/less/products.less'並刪除了應用文件夾結構。一個擁有所有資產的應用程序感覺很乾淨,太糟糕了,它消失了! –
也許我錯過了一些東西,但爲什麼不只是配置'lessc'的幾個包含路徑,使它不必使用這些相對路徑?它可能不是理想的或命名空間,但你的解決方案也不是。 – tmandry