Many fixes and docstrings
This commit is contained in:
parent
eb93be38ea
commit
dd67eafd0d
5 changed files with 118 additions and 10 deletions
|
|
@ -10,7 +10,7 @@ class IntegerField(PhangoField):
|
|||
Args:
|
||||
name (str): The name of new field
|
||||
size (int): The size of the new field in database. By default 11.
|
||||
required (bool): Boolean for define if
|
||||
required (bool): Boolean for define if field is required or not
|
||||
|
||||
"""
|
||||
|
||||
|
|
@ -124,24 +124,41 @@ class FloatField(PhangoField):
|
|||
return 'FLOAT NOT NULL DEFAULT "0"'
|
||||
|
||||
class DecimalField(FloatField):
|
||||
"""PhangoField field for Decimals fields."""
|
||||
|
||||
def get_type_sql(self):
|
||||
|
||||
return 'DECIMAL(20, 2) NOT NULL DEFAULT "0"'
|
||||
|
||||
class DoubleField(FloatField):
|
||||
"""PhangoField field for Double fields."""
|
||||
|
||||
def get_type_sql(self):
|
||||
|
||||
return 'DOUBLE NOT NULL DEFAULT "0"'
|
||||
|
||||
class CharField(PhangoField):
|
||||
"""Simple alias for PhangoField for clarify that """
|
||||
|
||||
pass
|
||||
|
||||
class TextField(PhangoField):
|
||||
"""Class used for text fields
|
||||
|
||||
Class used for text fields, use TEXT sql type for the this field.
|
||||
"""
|
||||
|
||||
def __init__(self, name, required=False):
|
||||
"""Init TextField class different to standard PhangoField
|
||||
|
||||
Args:
|
||||
name (str): The name of new field
|
||||
required (bool): Boolean for define if field is required or not
|
||||
|
||||
Attributes:
|
||||
set_default (str): Set if the value es NOT NULL or not
|
||||
"""
|
||||
|
||||
super().__init__(name, 11, required)
|
||||
|
||||
self.set_default='NOT NULL'
|
||||
|
|
@ -155,12 +172,30 @@ class TextField(PhangoField):
|
|||
return 'TEXT '+self.set_default
|
||||
|
||||
class HTMLField(TextField):
|
||||
"""Class used for html fields
|
||||
|
||||
Class used for html fields, use TEXT sql type for the this field because is children of TextField.
|
||||
"""
|
||||
|
||||
def __init__(self, name, required=False):
|
||||
"""Init HTMLField class different to standard PhangoField
|
||||
|
||||
Args:
|
||||
name (str): The name of new field
|
||||
required (bool): Boolean for define if field is required or not
|
||||
|
||||
Attributes:
|
||||
trusted_tags (list): A list with safe tags.
|
||||
"""
|
||||
|
||||
super().__init__(name, required)
|
||||
self.trusted_tags=[]
|
||||
|
||||
def check(self, value):
|
||||
"""Check method for html values
|
||||
|
||||
This check method use beautifulsoap for clean and format html code
|
||||
"""
|
||||
|
||||
soup=BeautifulSoup(value, features='html.parser')
|
||||
|
||||
|
|
@ -172,8 +207,17 @@ class HTMLField(TextField):
|
|||
|
||||
|
||||
class ForeignKeyField(IntegerField):
|
||||
"""Subclass of IntegerField for create Foreign keys
|
||||
|
||||
A subclass of IntegerField used for create foreign keys in related tables.
|
||||
"""
|
||||
|
||||
def __init__(self, name, related_table, size=11, required=False, identifier_field='id', named_field="id", select_fields=[]):
|
||||
"""
|
||||
Args:
|
||||
name (str): Name of field
|
||||
|
||||
"""
|
||||
|
||||
super(ForeignKeyField, self).__init__(name, size, required)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue