Posted over 3 years ago. Visible to the public.

Haml: Prefixing a group of attributes

Haml lets you prefix a group of attributes by wrapping them in a hash. This is only possible with the {} attribute syntax, not with the () attribute syntax.

Example: HTML5 data attributes

HTML5 allows you to use arbitrary attributes like data-method and data-confirm. You can prefix a group of data- attributes like this:

Copy
%a{href: '/path', data: { method: 'delete', confirm: 'Really delete?' }} Label

This compiles to:

Copy
<a data-confirm='Really delete?' data-method='delete' href='/path'>Label</a>

Example: Unpoly attributes

You might also want to use this to define multiple Unpoly Archive attributes, which are all prefixed by up-:

Copy
%a{href: '/path', up: { target: '.element', transition: 'zoom-in' }} Label

This compiles to:

Copy
<a href='/path' up-target='.element' up-transition='zoom-in'>Label</a>

makandra has been working exclusively with Ruby on Rails since 2007. Our laser focus on a single technology has made us a leader in this space.

Owner of this card:

Avatar
Henning Koch
Last edit:
over 3 years ago
by Henning Koch
About this deck:
We are makandra and do test-driven, agile Ruby on Rails software development.
License for source code
Posted by Henning Koch to makandra dev
This website uses short-lived cookies to improve usability.
Accept or learn more