HAML в Rails 3 выдает только hctml типа документа - PullRequest
7 голосов
/ 25 января 2011

Эй, ребята, у меня проблема:

Если использовать что-то вроде этого:

!!! XML
!!!
%html
  %head
    %title Myspace
  %body
    %h1 I am the international space station
    %p Sign my guestbook

Я получаю только это в качестве источника:

<!DOCTYPE html>
<html>
  <head>
    <title>Myspace</title>
  </head>
  <body>

    <h1>I am the international space station</h1>
    <p>Sign my guestbook</p>
  </body>
</html>

Спасибоза любую помощь:)

Ответы [ 2 ]

8 голосов
/ 26 января 2011

Согласно документации HAML , XHTML является DOCTYPE по умолчанию, за исключением Rails 3, который использует HTML5. Вы можете установить опцию :format для переопределения.

В config/environment.rb:

Haml::Template.options[:format] = :xhtml
6 голосов
/ 04 декабря 2011

Для меня это не работает, чтобы поместить это в environment.rb.

Я установил инициализатор в config/initializers/haml.rb и вставил в него ...

Haml::Template.options[:format] = :xhtml

Обязательно перезапустите сервер после добавления этого.

Тогда на моих страницах ...

!!! XML
!!!

Это производит ...

<?xml version='1.0' encoding='utf-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
...