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
|
# File 'lib/nested/js.rb', line 3
def self.generate_function_name(resource, method, action)
arr = []
arr << "update" if method == :put
arr << "create" if method == :post
arr << "destroy" if method == :delete
all = resource.self_and_parents.reverse
all.each do |e|
if e.is_a?(Many)
if e == all.last
if method == :post
arr << e.name.to_s.singularize.to_sym
else
arr << e.name
end
else
arr << e.name unless all[all.index(e) + 1].is_a?(One)
end
else
arr << e.name
end
end
arr << action if action
arr.map(&:to_s).join("_").camelcase(:lower)
end
|