https://github.com/janko/roda-symbolized_params
A Roda plugin which symbolizes request params
https://github.com/janko/roda-symbolized_params
Last synced: 10 months ago
JSON representation
A Roda plugin which symbolizes request params
- Host: GitHub
- URL: https://github.com/janko/roda-symbolized_params
- Owner: janko
- License: mit
- Created: 2015-04-21T22:56:38.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2015-04-21T23:04:33.000Z (over 10 years ago)
- Last Synced: 2025-03-06T20:34:51.755Z (10 months ago)
- Language: Ruby
- Homepage:
- Size: 117 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Roda::SymbolizedParams
A [Roda](https://github.com/jeremyevans/roda) plugin that exposes symbolized
request params.
## Installation
```ruby
gem 'roda-symbolized_params'
```
## Usage
```ruby
require "roda"
class App < Roda
plugin :symbolized_params
route do |r|
r.root do
params[:foo] # symbolized request params
end
end
end
```
This plugin exposes the `#params` method which is just a wrapper around
`request.params`, but with symbolized keys.
This plugin is similar to the built-in `indifferent_params` plugin, but with
real symbolized keys. Advantage of this plugin is that you don't have to always
keep in mind that you still actually have string keys, so you can normally use
methods like `Hash#fetch`, and you can use params as keyword arguments.
An obvious disadvantage is that new symbols are created each time, which have
to be garbage collected. So you shouldn't use this plugin in Ruby versions <
2.2.0, because Ruby Symbol GC was only introduced in Ruby 2.2.0.
## License
[MIT](LICENSE.txt)