diff --git a/paramecio2/libraries/db/extrafields/imagefield.py b/paramecio2/libraries/db/extrafields/imagefield.py index 290c3fb..4728b0f 100644 --- a/paramecio2/libraries/db/extrafields/imagefield.py +++ b/paramecio2/libraries/db/extrafields/imagefield.py @@ -72,44 +72,50 @@ class ImageField(CharField): #if not change - if not field_file in files_uploaded: - - if value=='': + if field_file in files_uploaded: + + if files_uploaded[field_file].filename=='': - if self.model: + if value=='': - if self.model.updated: + if self.model: - old_reset=self.model.yes_reset_conditions - - self.model.yes_reset_conditions=False - - with self.model.select([self.name]) as cur: - - for arr_image in cur: - - if arr_image[self.name]!='': - try: - os.remove(arr_image[self.name]) - except: - pass - - #if arr_image[self.name]!=save_file and arr_image[self.name]!='': - - #value=arr_image[self.name] - - self.model.yes_reset_conditions=old_reset - self.txt_error='Field is empty' - self.error=True - - return '' + if self.model.updated: + + old_reset=self.model.yes_reset_conditions + + self.model.yes_reset_conditions=False + + with self.model.select([self.name]) as cur: + + for arr_image in cur: + + if arr_image[self.name]!='': + try: + os.remove(arr_image[self.name]) + except: + pass + + #if arr_image[self.name]!=save_file and arr_image[self.name]!='': + + #value=arr_image[self.name] + + self.model.yes_reset_conditions=old_reset + self.txt_error='Field is empty' + self.error=True + + return '' - else: - - value=os.path.basename(value) - - return self.save_folder+'/'+value + else: + + value=os.path.basename(value) + + return self.save_folder+'/'+value + else: + value=os.path.basename(value) + + return self.save_folder+'/'+value # Load image file diff --git a/paramecio2/libraries/db/extrafields/jsonfield.py b/paramecio2/libraries/db/extrafields/jsonfield.py index e90221d..80897ff 100644 --- a/paramecio2/libraries/db/extrafields/jsonfield.py +++ b/paramecio2/libraries/db/extrafields/jsonfield.py @@ -72,6 +72,7 @@ class JsonValueField(PhangoField): super().__init__(name, required) self.error_default='Sorry, the json dict is invalid' + self.default_value={} #self.set_default='NOT NULL' @@ -86,7 +87,7 @@ class JsonValueField(PhangoField): except json.JSONDecodeError: - final_value={} + final_value='{}' self.error=True self.txt_error=self.error_default diff --git a/setup.py b/setup.py index f6254b5..3a27664 100644 --- a/setup.py +++ b/setup.py @@ -5,7 +5,7 @@ import os from setuptools import setup, find_packages -if sys.version_info < (3, 6): +if sys.version_info < (3, 8): raise NotImplementedError("Sorry, you need at least Python 3.6 for use paramecio2.") #import paramecio @@ -13,7 +13,7 @@ if sys.version_info < (3, 6): # If you install passlib and bcrypt, the password system will use bcrypt by default, if not, will use native crypt libc setup(name='paramecio2', - version='2.0.21', + version='2.0.22', description='Simple Web Framework based in flask and Mako.', long_description='This framework is a simple framework used for create web apps. Paramecio is modular and fast. By default have a module called admin that can be used for create admin sites', author='Antonio de la Rosa Caballero',