У меня возникла проблема с получением libsass для компиляции файлов SASS. Я могу заставить его скомпилировать файлы SCSS.Python libsass sass.complie() not compiling sass
У меня есть приложение для фляги, и я установил libsass, и я использую привязку libsass sass. Он работает хорошо, но не хватает некоторых функций - он не может скомпилировать SASS, но он может скомпилировать SCSS. Вот что я сделал:
В моем applicaiton.py файле у меня есть
from flask import Flask
import sass
app = Flask(__name__)
@app.route('/')
def hello_world():
return 'Hello World!'
if __name__ == '__main__':
sass.compile(dirname=('client/sass', 'client/css'), source_comments=True)
app.run()
Мои два тестовых файлов test_scss.scss
, который работает:
$font-stack: Helvetica, sans-serif;
$primary-color: #333;
body {
font: 100% $font-stack;
color: $primary-color;
}
И test_sass.sass
:
$font-stack: Helvetica, sans-serif
$primary-color: #333
body
font: 100% $font-stack
color: $primary-color
В документации указано, что sass.complie
может принимать код SASS b ut Я могу получить только код SCSS. То есть, когда я запускаю свое приложение, только файл .scss
компилируется в CSS. Структура каталогов моего applicaiton после sass.compile
прогонов:
- клиент
- CSS
- app.css
- test_scss.css
- Lib
- дерзость
- test_sass.sass
- test_scss.scss
- CSS
- сервер
- шаблоны
- application.py
Кто-то предположил, что я просто переименовал файл SASS в расширение .scss
. Как test_sass.scss
:»
$font-stack: Helvetica, sans-serif
$primary-color: #333
body
font: 100% $font-stack
color: $primary-color
Однако, когда я делаю это, я просто получаю следующее сообщение об ошибке:
src/web-internal/server/applicaiton.py", line 8, in <module>
sass.compile(dirname=('client/sass', 'client/css'), source_comments=True)
File "/usr/local/lib/python3.4/site-packages/sass.py", line 516, in compile
raise CompileError(v)
sass.CompileError: b"Error: top-level variable binding must be terminated by ';'\n on line 2 of src/web-internal/server/../client/sass/test_sass.scss\n>> $primary-color: #333\n ^\n"
Я хотел бы использовать SASS, и будет perfer не соглашаться на SCSS. У кого-нибудь есть предложения? Я чувствую, что есть что-то в sass documentation, что я недопонимаю.
Можете ли вы показать структуру папок вашего приложения? – doru
@doru, Вы поняли! – Mike
Ваши папки 'sass',' css' должны находиться в папке с именем 'static'. См. [Здесь] (http://hongminhee.org/libsass-python/frameworks/flask.html#id3) некоторую информацию. – doru