From b7920fa35024b63a07890be574c07a14ea178a39 Mon Sep 17 00:00:00 2001 From: Antonio de la Rosa Date: Fri, 23 Jun 2017 03:33:48 +0200 Subject: [PATCH] Fix in formsutils --- paramecio/citoplasma/generate_admin_class.py | 5 ++++- paramecio/cromosoma/formsutils.py | 14 +++++++++++--- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/paramecio/citoplasma/generate_admin_class.py b/paramecio/citoplasma/generate_admin_class.py index caede7f..31e06ee 100644 --- a/paramecio/citoplasma/generate_admin_class.py +++ b/paramecio/citoplasma/generate_admin_class.py @@ -74,9 +74,12 @@ class GenerateAdminClass: title_edit=I18n.lang('common', 'add_new_item', 'Add new item') + pass_value=False + if getpostfiles.get['id']!='0': post=self.model.select_a_row(getpostfiles.get['id'], [], True) title_edit=I18n.lang('common', 'edit_new_item', 'Edit item') + pass_value=True if post==None or post==False: @@ -87,7 +90,7 @@ class GenerateAdminClass: url_action=add_get_parameters(self.url, op_admin=2, id=getpostfiles.get['id']) - form=show_form(post, edit_forms, self.t, False) + form=show_form(post, edit_forms, self.t, False, pass_value) return self.t.render_template(self.template_insert, admin=self, title_edit=title_edit, form=form, model=self.model, id=getpostfiles.get['id'], url_action=url_action) diff --git a/paramecio/cromosoma/formsutils.py b/paramecio/cromosoma/formsutils.py index 43d0a62..0968db7 100644 --- a/paramecio/cromosoma/formsutils.py +++ b/paramecio/cromosoma/formsutils.py @@ -9,14 +9,22 @@ from bottle import request # Need unittest -def pass_values_to_form(post, arr_form, yes_error=True): +def pass_values_to_form(post, arr_form, yes_error=True, pass_values=True): + if pass_values: + def get_value(key): + return post[key] + + else: + def get_value(key): + return arr_form[key].default_value + for key, value in arr_form.items(): post[key]=post.get(key, '') #if arr_form[key].default_value=='': - arr_form[key].default_value=post[key] + arr_form[key].default_value=get_value(key) if arr_form[key].field==None: arr_form[key].field=corefields.CharField(key, 255, required=False) @@ -66,7 +74,7 @@ def show_form(post, arr_form, t, yes_error=True, pass_values=True, modelform_tpl generate_csrf() if pass_values==True: - pass_values_to_form(post, arr_form, yes_error) + pass_values_to_form(post, arr_form, yes_error, pass_values) return t.load_template(modelform_tpl, forms=arr_form)