Sha256: f711007e3684c99d53cc3c431edec29d99fdea0b7287ac182ed21b119d8a4fe4

Contents?: true

Size: 1.26 KB

Versions: 1

Compression:

Stored size: 1.26 KB

Contents

<% klass = class_name.singularize -%>
<% ivar = class_name.snake_case.singularize -%>
class <%= class_name %> < Application
  provides :xml, :js, :yaml
  
  def index
    @<%= ivar.pluralize %> = <%= klass %>.all
    render @<%= ivar.pluralize %>
  end
  
  def show(id)
    @<%= ivar %> = <%= klass %>[id]
    raise BadRequest unless @<%= ivar %>
    render @<%= ivar %>
  end
  
  def new
    only_provides :html
    @<%= ivar %> = <%= klass %>.new
    render @<%= ivar %>
  end
  
  def create(<%= ivar %>)
    @<%= ivar %> = <%= klass %>.new(<%= ivar %>)
    if @<%= ivar %>.save
      redirect url(:<%= ivar %>, @<%= ivar %>)
    else
      render :action => :new
    end
  end
  
  def edit(id)
    only_provides :html
    @<%= ivar %> = <%= klass %>[id]
    raise BadRequest unless @<%= ivar %>
    render
  end
  
  def update(id, <%= ivar %>)
    @<%= ivar %> = <%= klass %>[id]
    raise BadRequest unless @<%= ivar %>
    if @<%= ivar %>.update_attributes(<%= ivar %>)
      redirect url(:<%= ivar %>, @<%= ivar %>)
    else
      raise BadRequest
    end
  end
  
  def destroy(id)
    @<%= ivar %> = <%= klass %>[id]
    raise BadRequest unless @<%= ivar %>
    if @<%= ivar %>.destroy!
      redirect url(:<%= ivar.pluralize %>)
    else
      raise BadRequest
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
merb_datamapper-0.4.3 datamapper_generators/resource_controller/templates/controller.rb