diff --git a/app/views/apipie/apipies/_method_detail.erb b/app/views/apipie/apipies/_method_detail.erb index 390a9b655..a8a274bf3 100644 --- a/app/views/apipie/apipies/_method_detail.erb +++ b/app/views/apipie/apipies/_method_detail.erb @@ -24,6 +24,7 @@ <% unless method[:params].blank? %> <%= heading(t('apipie.params'), h_level) %> + <%= render(:partial => "params_simple", :locals => {:params => method[:params]}) %> @@ -44,6 +45,7 @@ <%= heading("#{t('apipie.description')}:", h_level + 2) %>

<%= item[:description] %>

<% end %> + <%= render(:partial => "params_simple", :locals => {:params => item[:returns_object]}) %>
diff --git a/app/views/apipie/apipies/_params.html.erb b/app/views/apipie/apipies/_params.html.erb index 91ea0792e..74a8978f4 100644 --- a/app/views/apipie/apipies/_params.html.erb +++ b/app/views/apipie/apipies/_params.html.erb @@ -5,7 +5,7 @@ <%= render(:partial => "params", :locals => {:level => level, :params => param[:params]}) unless param[:params].blank? %> <% next %> <% end %> - +
<%= param[:full_name] %> <% if param[:deprecated].present? %> diff --git a/app/views/apipie/apipies/_params_simple.html.erb b/app/views/apipie/apipies/_params_simple.html.erb new file mode 100644 index 000000000..cac3b2133 --- /dev/null +++ b/app/views/apipie/apipies/_params_simple.html.erb @@ -0,0 +1,49 @@ +
    + <% params.each do |param| %> + <% if !param[:show] %> + <%= render(:partial => "params_simple", :locals => {:params => param[:params]}) unless param[:params].blank? %> + <% next %> + <% end %> +
  • + + + + <%= param[:name] %> + + + + <%- if param[:required] %> + * + <%- end %> + <%- if param[:validator].present? %> + : + + <% if param[:validator].include? "one of" %> + <%= param[:validator].html_safe %> + <%- else %> + <%- if param[:is_array] || param[:expected_type] == "array" %> + [ + <%- end %> + <%- if param[:expected_type] == "hash" && !param[:is_array] %> + { + <%- elsif param[:params].blank? %> + <%= param[:expected_type] %> + <%- if (param[:is_array] || param[:expected_type] == "array") %> + ] + <%- end %> + <%- end %> + <% end %> + + <%- end %> +
  • + <% if param[:params].present? %> + <%= render(:partial => "params_simple", :locals => {:params => param[:params]}) unless param[:params].blank? %> + <%- if param[:expected_type] == "hash" && !param[:is_array] %> + } + <%- end %> + <%- if param[:is_array] || param[:expected_type] == "array" %> + ] + <%- end %> + <% end %> + <% end %> +
\ No newline at end of file diff --git a/lib/apipie/param_description.rb b/lib/apipie/param_description.rb index 7b917d683..aaffc439d 100644 --- a/lib/apipie/param_description.rb +++ b/lib/apipie/param_description.rb @@ -165,6 +165,7 @@ def to_json(lang = nil) required: required, allow_nil: allow_nil, allow_blank: allow_blank, + is_array: is_array, validator: validator.to_s, expected_type: validator.expected_type, metadata: metadata, diff --git a/spec/controllers/users_controller_spec.rb b/spec/controllers/users_controller_spec.rb index b37c5c425..e20c585fd 100644 --- a/spec/controllers/users_controller_spec.rb +++ b/spec/controllers/users_controller_spec.rb @@ -278,6 +278,7 @@ def reload_controllers :required => false, :allow_nil => true, :allow_blank => false, + :is_array => nil, :metadata => nil, :show => true, :deprecated => false,