Add Support for Nested Params Parsing in Rack::Request
Reported by Matt Todd | December 28th, 2008 @ 07:49 AM | in 1.0
Adding ticket for conversation going on at:
http://groups.google.com/group/r...
The conversation covers numerous topics so this ticket reflects specifically the proposal for parsing nested params.
To clarify, request params, when encoded in application/x-www-form-urlencoded, can be specified simply as a=b&x=y (flat) as well as a[b]=c&a[d]=e (nested) values.
The proposal is to include parsing these nested values into a
Hash instead of just including top-level keys as a[b]
and a[c] only.
Refer to the RFC for the specification of a query as between the @?@ and the @#@ of the URL:
http://tools.ietf.org/html/rfc39....4
Unfortunately, the RFC does not specify further regarding nested pairs.
Michael Fellinger (manveru) provided this implementation:
Comments and changes to this ticket
-

Joshua Peek January 18th, 2009 @ 02:43 AM
- Milestone set to 1.0
We really need Rack to support this. Rails, Merb, Ramaze, and Sinatra all need to implement it themselves. This should not be an extension or a flaggable option either.
http://github.com/bmizerany/sina...
Not to get all Railsy, but it would be nice if we picked an implementation that is compatible with Rails and keeps all our tests passing :) Yehuda said something about Merb's doing different things at deeper nesting levels.
+1
-

Joshua Peek January 19th, 2009 @ 09:16 PM
- Assigned user set to Joshua Peek
Ported Merbs params parser over. It still needs some polish.
Test coverage supports all the the features we need for Rails.
-

-

-

Joshua Peek January 28th, 2009 @ 08:19 PM
- no changes were found...
-

Joshua Peek January 29th, 2009 @ 06:58 PM
- no changes were found...
-

Joshua Peek February 1st, 2009 @ 05:35 AM
- State changed from new to resolved
Please Sign in or create a free account to add a new ticket.
With your very own profile, you can contribute to projects, track your activity, watch tickets, receive and update tickets through your email and much more.
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile »