Repository is archived
No commit activity in last 3 years
No release in over 3 years
Rails scaffolding with Haml rather than ERB, and various other improvements.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

>= 1.8.0
>= 1.4.1

Runtime

>= 2.0.6
>= 0.9.0
 Project Readme

Haml Scaffold¶ ↑

A collection of hacks to the Rails scaffold generator, to make it output templates using Haml rather than ERB. You may like some of it, and may hate other parts. You’re free to use it under the terms of the MIT license if the parts you like outweigh the parts you hate.

This scaffold generator does the same thing as the default Rails scaffold generator, with a few differences.

Differences from Rails Scaffolding:¶ ↑

  • Haml not ERB.

Controller¶ ↑

  • Loads object with a before_filter to be DRYer.

  • “Destroy” method handles error conditions.

  • Actions are alphabetized for more obvious consistency.

  • Uses will_paginate.

Controller Test¶ ↑

  • Tests error conditions, not just the “happy path.”

  • Has 100% code coverage with RCov.

  • Uses very simple mocking with mocha to limit calls to the DB.

Views¶ ↑

  • Have cleaner, more semantic XHTML that’s easier to quickly replace with your own markup.

  • Are broken up into a couple of partials to be DRYer.

  • Use will_paginate.

Misc¶ ↑

  • Generates Haml layout and SASS stylesheet.

Samples¶ ↑

View them here.

Installation¶ ↑

Haml Scaffold is available on RubyForge as a gem:

sudo gem install haml_scaffold

You can also install it as a Rails plugin if you wish:

./script/plugin install git://github.com/norman/haml-scaffold.git

Dependencies¶ ↑

The generated code will depend on:

You’ll need to add the gem dependencies to your config/environment.rb manually:

config.gem "haml"
config.gem "will_paginate"
config.gem "mocha"

Also, don’t forget to Hamlize your Rails app:

$ cd my_rails_app
$ haml --rails .

Other stuff you might be interested in:¶ ↑

Author¶ ↑

Norman Clarke

This work is derived from code in Ruby on Rails and is released under its same license, the MIT License.