Как заставить Haml работать с Rails? - PullRequest
77 голосов
/ 19 сентября 2008

Я пытаюсь заставить Хамла работать с моим проектом Ruby on Rails. Я новичок в Ruby on Rails и мне это очень нравится. Однако, когда я пытаюсь добавить aplication.html.haml или index.html.haml для представления, я просто получаю ошибки.

Я использую NetBeans в качестве своей IDE.

Ответы [ 9 ]

88 голосов
/ 22 мая 2010

Хамл с Рельсами 3

Для Rails 3 все, что вам нужно сделать, это добавить gem "haml", '3.0.25' к вашему Gemfile. Нет необходимости устанавливать плагин или запускать haml --rails ..

Просто:

$ cd awesome-rails-3-app.git
$ echo 'gem "haml"' >> Gemfile

И все готово.

59 голосов
/ 18 февраля 2011

Ответы выше точные. Вам просто нужно поместить gem 'haml' в ваш Gemfile.

Еще один совет, который не был упомянут: чтобы генераторы рельсов использовали haml вместо erb, добавьте следующее к config/application.rb:

config.generators do |g|
  g.template_engine :haml

  # you can also specify a different test framework or ORM here
  # g.test_framework  :rspec
  # g.orm             :mongoid
end    
37 голосов
/ 20 сентября 2008

Во-первых, установите haml в качестве самоцвета в компоновщике, добавив его в Gemfile:

gem "haml"

Запустите bundle install, затем убедитесь, что вашим представлениям присвоено имя *. Html.haml . Например:

`-- app
    `-- views
        |-- layouts
        |   `-- application.html.haml
        `-- users
            |-- edit.html.haml
            |-- index.html.haml
            |-- new.html.haml
            `-- show.html.haml
24 голосов
/ 08 мая 2012

Добавьте хамл в ваш Gemfile:

gem "haml"

Если вы тоже хотите использовать функции scaffold, добавьте haml-rails в группу разработки:

gem 'haml-rails', :group => :development

Не забудьте запустить:

$ bundle install
11 голосов
/ 21 апреля 2009

Прежде чем пытаться использовать haml в вашем приложении rails, вы можете убедиться, что исполняемый файл командной строки установлен правильно:

$ haml
%p 
  %span Hello World!

Затем нажмите CTRL-D, и вы должны увидеть:

<p>
  <span>Hello World!</span>
</p>
10 голосов
/ 20 сентября 2008

Во-первых, убедитесь, что у вас есть гем HAML.

gem list --local | grep haml

Если haml не отображается в списке, сделайте следующее:

sudo gem install haml

Затем сделайте это из каталога вашего проекта:

# cd ../
# haml --rails <yourproject>

Это должно установить все, что вам нужно, и представления HAML должны перестать жаловаться и правильно анализировать.

3 голосов
/ 05 мая 2012

Это может быть старый вопрос, но я думаю, что ответ использует haml-rails на https://github.com/indirect/haml-rails

1 голос
/ 23 октября 2009

если по какой-то причине вы установили haml, но он не запускается. попробуйте

sudo ln haml /usr/bin/

в папке bin вашего гема haml

по какой-то причине это не произошло автоматически на моем Ubuntu 9.04 Jaunty.

0 голосов
/ 09 мая 2012

Если вы используете Pow , вам нужно будет также перезагрузить его. В идеале вы используете powder (самоцвет для установки порошка), потому что тогда вы можете просто запустить его на терминале

$ powder restart
...