-
Notifications
You must be signed in to change notification settings - Fork 1
/
README
49 lines (36 loc) · 1005 Bytes
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
merb-action-args
================
A plugin for the Merb framework that provides support for arguments to actions that
come in from the query.
==== Basics
{{[
class Foo < Merb::Controller
def bar(baz)
bar
end
end
]}}
Hitting "/foo/bar?baz=bat" will call foo("bat").
Hitting "/foo/bar" will raise a BadRequest (Status 400) error.
==== Defaults
{{[
class Foo < Merb::Controller
def bar(baz, bat = "hola")
"#{baz} #{bat}"
end
end
]}}
Hitting "/foo/bar?baz=bat" will call foo("bat", "hola")
Hitting "/foo/bar?baz=bat&bat=whaa" will call foo("bat", "whaa")
Hitting "/foo/bar" will still raise a BadRequest.
==== Out of order defaults
{{[
class Foo < Merb::Controller
def bar(one, two = "dos", three = "tres")
"#{one} #{two} #{three}"
end
end
]}}
The interesting thing here is that hitting "/foo/bar?one=uno&three=three" will call
foo("uno", "dos", "three"). In other words, the defaults can be in any order, and
merb-action-args will figure out where to fill in the holes.