Документация по вашему вопросу: здесь на haml-lang.com и более подробное объяснение на sass-lang.com .
Я считаю, что вам не хватает того, что sass не должен использоваться в ваших файлах haml. Они должны быть размещены в public / stylesheets / sass с расширением .sass. Они будут скомпилированы в файл .css в public / stylesheets, который вы затем добавите в свой макет.
Из ссылки sas-lang.com:
Например, public / stylesheets / sass / main.scss будет скомпилирован в public / stylesheets / main.css.
Затем вы должны использовать помощник stylesheet_link_tag (или связать таблицу стилей вручную):
<%= style_sheet_link_tag 'main' %>
Если вам действительно нужно использовать sass в haml, здесь - это ответ. Вы не можете вкладывать фильтры в хамл. По-видимому, вам нужно сделать что-то вроде этого:
%style(type="text/css")
:sass
div
color: red
Я полагаю, это было первоначальным ответом от групп Google haml.