2013-03-28 50 views
11

这是我的Gemfile如何生成用于设计视图中HAML

gem 'haml' 
group :development do 
    gem 'hpricot' 
    gem 'ruby_parser' 
end 

我然后执行下面的语句中的终端/命令窗口:

bundle install 
rails generate devise:views users -e haml 

rails generate devise:views users -t = haml 

但在erb中创建设计视图。如何解决这个问题?

回答

28

我必须这样做

rails generate devise:views 

gem "html2haml" 
bundle install 

for file in app/views/devise/**/*.erb; do html2haml -e $file ${file%erb}haml && rm $file; done 

,现在它是完美的。

另见devise wiki

+0

其简单的erb哈姆转换的情况下。你可以使用任何类型的哈姆转换器。 – 2015-04-08 17:08:27

33

更简单的解决方案。

我已经erb2haml安装在我的Gemfile的发展部分,所以我就跑:

rails generate devise:views 
rake haml:erb2haml 
# or 
rake haml:replace_erbs # outdated 

完成!

+1

+1这是一个很好的(而且很简单)的解决方案。 – theTRON 2013-10-21 01:10:16

+1

简单!在'html2haml' gem更新它对'ruby_parser'的依赖之前,可能需要直接引用这个库,这样rake任务才能在Ruby 2.1.1中工作。 'gem'haml-rails'gem'html2haml',github:'haml/html2haml'gem'ruby_parser',github:'seattlerb/ruby​​_parser'' – scarver2 2014-03-12 13:09:46

+0

@ scarver2 - 不再需要 – Philip 2014-11-04 09:40:58

0

其简单地再培训局HAML转换情况。你可以使用任何类型的哈姆转换器。像这样一个 http://htmltohaml.com/