Every repository with this icon (
Every repository with this icon (
| name | age | message | |
|---|---|---|---|
| |
.gitignore | ||
| |
CHANGELOG | ||
| |
MIT-LICENSE | Thu Oct 18 04:00:34 -0700 2007 | |
| |
README.rdoc | ||
| |
Rakefile | ||
| |
SPECDOC | ||
| |
garlic_example.rb | ||
| |
init.rb | ||
| |
lib/ | ||
| |
spec/ |
response_for
response_for (see Ardes::ResponseFor::ClassMethods) allows you to decorate the respond_to block of actions on sublcassed controllers. This works nicely with plugins.ardes.com/doc/resources_controller
Current Version 0.2-stable
Version 0.2-stable of response_for has BC-breaking API changes, has vastly simplified internals, and is supported only for Rails >= 2.1.x.
Version 0.2.0 was released on Sept 14th 2008.
As of version 0.2.0, response_for’s functionality can be summed up in one sentence:
"response_for allows you to specify default responses for any action (or before filter) that doesn’t render or redirect"
Actions typically do two things - interact with models, and provide a repsonse. The above simple idea allows you to decouple these two functions (where appropriate), which means abstraction of common patterns becomes possible.
Example
class FooController < ApplicationController
def index
@foos = Foo.find(:all)
# default response - render html
end
end
# this controller needs to respond_to fbml on index.
# Using response_for, we don't need to repeat '@foos = Foo.find(1)'
class SpecialFooController < FooController
response_for :index do |format|
format.fbml { render :inline => turn_into_facebook(@foos) }
end
end
Specs and Coverage
- The SPECDOC lists the specifications
- Coverage is 100% (C0), and the spec suite is quite comprehensive
RSpec is used for testing, so the tests are in spec/ rather than test/ Do rake —tasks for more details.
Continuous Integration
garlic (at github.com/ianwhite/garlic) is used for CI. To run the CI suite have a look at garlic_example.rb
Previous Versions: 0.1
There is a branch for rails 2.0 users on this release. If you are using rails 2.0, then you want the 0.1-stable-rails2.0 branch. If you are using rails >= 2.1 then use the 0.1-stable branch









