diff --git a/app/helpers/dynamic_form_helper.rb b/app/helpers/dynamic_form_helper.rb index b0881ca..1279ec9 100644 --- a/app/helpers/dynamic_form_helper.rb +++ b/app/helpers/dynamic_form_helper.rb @@ -107,16 +107,15 @@ def data_reformater(schema, data) schema["properties"].each do |key, value| case value["type"] - when "integer" + when "number" data[key] = data[key].to_i when "boolean" data[key] = data[key] == "1" when "array" data[key] = data[key].kind_of?(Array) ? data[key] : [data[key]] when "object" - # if value["dictionnary"] - # data[key] = JSON.parse(DictionnaryValue.where(id: data[key]).select(:id, :uri, :label).take.to_json) - # end + sub_schema = MadmpSchema.find_by(classname: value['classname']) + data[key] = data_reformater(sub_schema.schema, data[key]) end end data diff --git a/app/views/branded/shared/dynamic_form/_form.html.erb b/app/views/branded/shared/dynamic_form/_form.html.erb index f1191e9..6e83bd3 100644 --- a/app/views/branded/shared/dynamic_form/_form.html.erb +++ b/app/views/branded/shared/dynamic_form/_form.html.erb @@ -15,7 +15,7 @@ <% elsif prop['format'] == 'select' && prop['values'] %> <%= create_select_field(f, value, "#{f.object_name}[#{field_name}]", prop['label'], prop['values']) %> <%end%> - <% when 'integer' %> + <% when 'number' %> <%= create_number_field(f, value, field_name, prop['label']) %> <% when 'boolean' %> <%= create_checkbox_field(f, value, field_name, prop['label']) %>