Fix in webmodel for add new error messages

This commit is contained in:
Antonio de la Rosa 2017-10-03 18:16:00 +02:00
parent 24af1883f9
commit fa536032f1
7 changed files with 36 additions and 15 deletions

View file

@ -82,6 +82,8 @@ class FloatField(PhangoField):
def __init__(self, name, size=11, required=False):
super(FloatField, self).__init__(name, size, required)
self.error_default="The value is zero"
def check(self, value):
"""Method for check if value is integer
@ -99,12 +101,12 @@ class FloatField(PhangoField):
value=str(float(value))
if value=="0" and self.required==True:
self.txt_error="The value is zero"
self.txt_error=self.error_default
self.error=True
except:
value="0"
self.txt_error="The value is zero"
self.txt_error=self.error_default
self.error=True
return value
@ -187,6 +189,8 @@ class BooleanField(IntegerField):
super(IntegerField, self).__init__(name, size, required)
self.default_error="Need 0 or 1 value"
def check(self, value):
self.error=False
@ -197,13 +201,13 @@ class BooleanField(IntegerField):
value=int(value)
if value<0 or value>1:
self.txt_error="Need 0 or 1 value"
self.txt_error=self.default_error
self.error=True
except:
self.error=True
self.txt_error="Need 0 or 1 value"
self.txt_error=self.default_error
value=0
value=str(value)

View file

@ -9,6 +9,8 @@ class ArrayField(PhangoField):
self.field_type=field_type
self.error_default='Sorry, the json array is invalid'
def check(self, value):
if type(value).__name__=='str':
@ -18,7 +20,7 @@ class ArrayField(PhangoField):
value=[]
self.error=True
self.txt_error='Sorry, the json array is invalid'
self.txt_error=self.error_default
elif type(value).__name__!='list':

View file

@ -12,6 +12,8 @@ class DateField(PhangoField):
self.utc=True
self.error_default='Date format invalid'
def check(self, value):
if self.utc:
@ -21,13 +23,13 @@ class DateField(PhangoField):
elif not datetime.obtain_timestamp(value, True):
self.error=True
self.txt_error='Date format invalid'
self.txt_error=self.error_default
return ''
if value==False:
self.error=True
self.txt_error='Date format invalid'
self.txt_error=self.error_default
return ''
return value

View file

@ -9,6 +9,8 @@ class DictField(PhangoField):
self.field_type=field_type
self.error_default='Sorry, the json dict is invalid'
def check(self, value):
if type(value).__name__=='str':
@ -18,13 +20,13 @@ class DictField(PhangoField):
value={}
self.error=True
self.txt_error='Sorry, the json dict is invalid'
self.txt_error=self.error_default
elif type(value).__name__!='dict':
value={}
self.error=True
self.txt_error='Sorry, the json array is invalid'
self.txt_error=self.error_default
for k,v in value.items():

View file

@ -5,6 +5,12 @@ mail_pattern=re.compile("\w[\w\.-]*@\w[\w\.-]+\.\w+")
class EmailField(CharField):
def __init__(self, name, size=1024, required=False):
super().__init__(name, size, required)
self.error_default='Error: No valid format'
def check(self, value):
value=super().check(value)
@ -16,6 +22,6 @@ class EmailField(CharField):
self.error=True
value=""
self.txt_error='No valid format'
self.txt_error=self.error_default
return value

View file

@ -29,11 +29,11 @@ class PasswordField(PhangoField):
return ""
else:
self.txt_error="The field is empty"
self.txt_error=self.error_default
self.error=True
else:
self.txt_error="The field is empty"
self.txt_error=self.error_default
self.error=True
else:

View file

@ -98,6 +98,10 @@ class PhangoField:
self.t=None
# Error by default
self.error_default='Error: field required'
# This method is used for describe the new field in a sql language format.
@ -129,7 +133,7 @@ class PhangoField:
#value=WebModel.escape_sql(value)
if value=="":
self.txt_error="The field is empty"
self.txt_error=self.error_default
self.error=True
@ -168,11 +172,12 @@ class PrimaryKeyField(PhangoField):
self.protected=True
self.name_form=HiddenForm
self.required=True
self.error_default="The value is zero"
def check(self, value):
self.error=None
self.txt_error=''
self.txt_error=self.error_default
if value=='':
value='0'
@ -186,7 +191,7 @@ class PrimaryKeyField(PhangoField):
value=0
if value==0:
self.txt_error="The value is zero"
self.txt_error=self.error_default
self.error=True