README.markdown in roar-rails-0.0.2 vs README.markdown in roar-rails-0.0.3
- old
+ new
@@ -2,28 +2,94 @@
_Makes using Roar's representers in your Rails app fun._
## Features
-### URL Helpers
+* Rendering with responders
+* URL helpers in representers
+* Better tests
+* Autoloading
+## Rendering with #respond_with
+
+Easily render resources using representers with the built-in responder.
+
+```ruby
+class SingersController < ApplicationController
+ respond_to :json
+
+ def show
+ singer = Singer.find_by_id(params[:id])
+ respond_with singer
+ end
+
+ def self.responder
+ Class.new(super).send :include, Roar::Rails::Responder
+ end
+
+end
+```
+
+Need to use a representer with a different name than your model? Pass it in using the `:with_representer` option:
+
+```ruby
+class SingersController < ApplicationController
+ respond_to :json
+
+ def show
+ singer = Musician.find_by_id(params[:id])
+ respond_with singer, :with_representer => SingerRepresenter
+ end
+
+ def self.responder
+ Class.new(super).send :include, Roar::Rails::Responder
+ end
+
+end
+```
+
+Goes great with [Jose Valim's responders gem][responders]!
+
+```ruby
+class SingersController < ApplicationController
+ respond_to :json
+
+ responders Roar::Rails::Responder
+
+ def show
+ singer = Singer.find_by_id(params[:id])
+ respond_with singer
+ end
+
+end
+```
+
+## URL Helpers
+
Any URL helpers from the Rails app are automatically available in representers.
```ruby
module FruitRepresenter
include Roar::Representer::JSON
-
+
link :self do
fruit_url self
end
```
+To get the hyperlinks up and running, please make sure to set the right _host name_ in your environment files (config/environments):
-### Testing
+```ruby
+config.representer.default_url_options = {:host => "127.0.0.1:3000"}
+```
-### Autoloading
+## Testing
+## Autoloading
+Put your representers in `app/representers` and they will be autoloaded by Rails. Also, frequently used modules as media representers and features don't need to be required manually.
## Contributors
-* [Railslove](http://www.railslove.de) and especially Michael Bumann [bumi] have heavily supported development of roar-rails ("resource :singers").
+* [Railslove](http://www.railslove.de) and especially Michael Bumann [bumi] have heavily supported development of roar-rails ("resource :singers").
+
+[responders]: https://github.com/plataformatec/responders