Sha256: 98b41be261929aae34cb0b3f8ebb906df3a7a1b0d2746ae008a8963871a1a6dd
Contents?: true
Size: 1.18 KB
Versions: 1
Compression:
Stored size: 1.18 KB
Contents
# Artdeco [![Build History][2]][1] [1]: http://travis-ci.org/tracksun/artdeco [2]: https://secure.travis-ci.org/tracksun/artdeco.png?branch=master Decorators for Rails * extend an object with given classes (default is \<object.class\>Decorator, if defined) * make helpers accessible in object via :h ### Example Decorate a model in your controller: def show article = Article.find(params[:id]) @article = Artdeco.decorate(article, self) end def index articles = Article.all @articles = Artdeco.decorate(articles, self) end Then @article will be extended by module ArticleDecorator and has access to your helpers via :h module ArticleDecorator def image h.image_tag('article') end end and your views may use the decorated model: # app/views/articles/show.html.haml %h1 Article = @article.image Modules for decoration may be given explicitly: Artdeco.decorate(user, self, decorator: Customer) # or Artdeco.decorate(user, self, decorator: [ Customer, Admin ] ) For conveniance decorated objects may decorate other objects: Artdeco.decorate(order, self) order.decorate(shopping_card)
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
artdeco-1.1.0 | README.md |