diff --git a/paramecio/citoplasma/slugify.py b/paramecio/citoplasma/slugify.py index fa57d6e..e6143f7 100644 --- a/paramecio/citoplasma/slugify.py +++ b/paramecio/citoplasma/slugify.py @@ -54,7 +54,7 @@ def slugify(str_in, respect_upper=False, replace_space='-', replace_dot=False, r str_out=str_out.replace(" ", replace_space) if respect_upper==False: - pass + str_out=str_out.lower() return str_out diff --git a/paramecio/cromosoma/corefields.py b/paramecio/cromosoma/corefields.py index 204dbfd..a0a6eec 100644 --- a/paramecio/cromosoma/corefields.py +++ b/paramecio/cromosoma/corefields.py @@ -58,6 +58,12 @@ class FloatField(PhangoField): return 'FLOAT NOT NULL DEFAULT "0"' +class DoubleField(FloatField): + + def get_type_sql(self): + + return 'DOUBLE NOT NULL DEFAULT "0"' + class CharField(PhangoField): pass diff --git a/paramecio/cromosoma/extrafields/slugifyfield.py b/paramecio/cromosoma/extrafields/slugifyfield.py index fae22f3..392115f 100644 --- a/paramecio/cromosoma/extrafields/slugifyfield.py +++ b/paramecio/cromosoma/extrafields/slugifyfield.py @@ -2,19 +2,36 @@ from paramecio.cromosoma.corefields import CharField from paramecio.citoplasma.slugify import slugify +from paramecio.cromosoma.coreforms import HiddenForm class SlugifyField(CharField): - def check(value): + def __init__(self, name, size=255, field_related=None, required=False): + + super(SlugifyField, self).__init__(name, size, required) + + self.name_form=HiddenForm + + self.field_related=field_related + + def check(self, value): value=slugify(value) if value=='': - self.error=True + if self.model!=None and self.field_related!=None: + + self.model.post[self.field_related]=self.model.post.get(self.field_related, '') + + value=slugify(self.model.post[self.field_related]) + + if value=='': - return '' - + self.error=True + self.error_txt='Value is empty' + + return '' return value diff --git a/paramecio/cromosoma/webmodel.py b/paramecio/cromosoma/webmodel.py index 50f24c8..f03f456 100644 --- a/paramecio/cromosoma/webmodel.py +++ b/paramecio/cromosoma/webmodel.py @@ -100,6 +100,10 @@ class WebModel: self.last_id=0 self.distinct='' + + # A simple dictionary where post values are saved for use of fields classes + + self.post={} # A method where create the new fields of this model @@ -149,6 +153,8 @@ class WebModel: # Connect to db + self.post=dict_values + self.connect_to_db() self.query_error='' @@ -181,6 +187,8 @@ class WebModel: def update(self, dict_values, external_agent=True): + self.post=dict_values + # Connect to db self.fields[self.name_field_id].required=False