Использование макетов в файлах HAML независимо от Rails

Моя конечная цель - создать несколько статических HTML-файлов для передачи другим людям.

Но для моего рабочего процесса я бы хотел иметь HAML в качестве основных исходных файлов. Поступая так, я надеюсь СУШИТЬ процесс, по крайней мере, со своей стороны.

Теперь у меня есть много страниц, которые в конечном итоге будут иметь общий макет, и мне интересно, как включить макеты.

Вот мой текущий код:

./ compile.rb

#!/usr/bin/env ruby

require 'rubygems'
require 'rake'
require 'haml'

FileList.new('./src/*.html.haml').each do |filename|
  if filename =~ /([^\/]+)\.haml$/
    File.open($1, 'w') do |f|
      f.write Haml::Engine.new(File.read(filename)).render
    end
  end
end

. /src/layout.html.haml

!!!
%html
  %head
    %title Yay
  %body
    = yield

./src/home.html.haml

= render :layout => 'header' do
  %p This is awesome

Теперь это явно не работает, потому что метод рендеринга не определен вне контекста Rails, но я надеюсь, что он понял суть относительно того, что я пытаюсь сделать.

Есть предложения?

36
задан Steven 25 May 2011 в 13:32
поделиться