Module: Effigy::Rails
- Defined in:
- lib/effigy/rails.rb,
lib/effigy/rails/view.rb,
lib/effigy/rails/template_handler.rb
Overview
Rails-specific functionality.
Effigy includes Rails generators for generating effigy view and template files within Rails projects, as well as a Rails-specific view superclass that provides functionality like assigns, layouts, and partials.
Example:
<pre> # app/controllers/magic_controller.rb class MagicController < ApplicationController
def index
@spell = 'hocus pocus'
end
end </pre>
<pre> # app/views/magic/index.html.effigy class MagicIndexView < Effigy::Rails::View
def transform
text('h1', @spell)
end
end </pre>
<pre> # app/templates/magic/index.html <h1>Spell name goes here</h1> </pre>
View this example in your browser and you’ll see “hocus pocus.”
Generators
Example:
./script/generate effigy_view users new edit index
This will generate Effigy views and templates for the “new,” “edit,” and “index,” actions of UsersController, such as app/views/users/new.html.effigy, and app/templates/users/new.html.
Rendering Effigy views from Rails
Effigy includes a Rails template handler, so you can render effigy views as normal. Rendering the “index” action from “UsersController” will look for a UsersIndexView class in app/views/users/index.html.effigy, and use it to transform app/templates/users/index.html.
Effigy Rails views
See View for extra methods available to Rails views.
Defined Under Namespace
Classes: TemplateHandler, View