有没有办法将rails配置为默认使用haml,即当生成脚手架时,生成的是根据scaffold_name/index.html.haml
而不是scaffold_name/index.html.erb
.
类似于您如何能够添加并config.sass.preferred_syntax = :sass
默认生成。config/application.rb
scaffold_name.sass
尝试将以下内容添加到config/application.rb
config.generators do |g|
g.template_engine :haml
end
但结束了以下
$ rails generate scaffold foo name:string
invoke active_record
create db/migrate/20120208152550_create_foos.rb
create app/models/foo.rb
invoke test_unit
create test/unit/foo_test.rb
create test/fixtures/foos.yml
route resources :foos
invoke scaffold_controller
create app/controllers/foos_controller.rb
error haml [not found]
invoke test_unit
create test/functional/foos_controller_test.rb
invoke helper
create app/helpers/foos_helper.rb
invoke test_unit
create test/unit/helpers/foos_helper_test.rb
invoke assets
invoke coffee
create app/assets/javascripts/foos.js.coffee
invoke sass
create app/assets/stylesheets/foos.css.sass
invoke sass
identical app/assets/stylesheets/scaffolds.css.sass
$ rails destroy scaffold foo
invoke active_record
remove db/migrate/20120208152550_create_foos.rb
remove app/models/foo.rb
invoke test_unit
remove test/unit/foo_test.rb
remove test/fixtures/foos.yml
route resources :foos
invoke scaffold_controller
remove app/controllers/foos_controller.rb
error haml [not found]
invoke test_unit
remove test/functional/foos_controller_test.rb
invoke helper
remove app/helpers/foos_helper.rb
invoke test_unit
remove test/unit/helpers/foos_helper_test.rb
invoke assets
invoke coffee
remove app/assets/javascripts/foos.js.coffee
invoke sass
remove app/assets/stylesheets/foos.css.sass
invoke sass
在这个截屏视频之后,我创建了一个不错的小捆绑命令,用 haml 文件替换所有 erb,但我仍然有兴趣在创建脚手架时将其设为默认值!我如何使它默认生成haml文件(不是erb!)?