Module: Susanin
- Extended by:
- ActiveSupport::Concern
- Defined in:
- lib/susanin.rb,
lib/susanin/pattern.rb,
lib/susanin/version.rb,
lib/susanin/resource.rb
Defined Under Namespace
Modules: ClassMethods
Classes: Pattern, Resource
Constant Summary
collapse
- VERSION =
"0.1.4"
Instance Method Summary
collapse
Instance Method Details
#polymorphic_path(record_or_hash_or_array, options = {}) ⇒ Object
36
37
38
39
40
41
42
43
44
|
# File 'lib/susanin.rb', line 36
def polymorphic_path(record_or_hash_or_array, options={})
params = susanin_converter(record_or_hash_or_array, options)
if (params.first.size == 1) && params.first[0].is_a?(String)
params.first.first
else
super(*params)
end
end
|
#polymorphic_url(record_or_hash_or_array, options = {}) ⇒ Object
26
27
28
29
30
31
32
33
34
|
# File 'lib/susanin.rb', line 26
def polymorphic_url(record_or_hash_or_array, options={})
params = susanin_converter(record_or_hash_or_array, options)
if (params.first.size == 1) && params.first[0].is_a?(String)
params.first.first
else
super(*params)
end
end
|
#susanin ⇒ Object
52
53
54
|
# File 'lib/susanin.rb', line 52
def susanin
@susanin ||= Resource.new()
end
|
#susanin_converter(record_or_hash_or_array, options = {}) ⇒ Object
46
47
48
49
50
|
# File 'lib/susanin.rb', line 46
def susanin_converter(record_or_hash_or_array, options={})
params = susanin.url_parameters(Array.wrap(record_or_hash_or_array))
params_options = params.
[params, options.merge(params_options)]
end
|