Data Models¶
The darc.model
module contains all data models defined for the
darc
project, including RDS-based task queue and data submission.
Base Model¶
The darc.model.abc
module contains abstract base class
of all data models for the darc
project.
-
class
darc.model.abc.
BaseMeta
[source]¶ Bases:
object
Basic metadata for data models.
-
table_function
()¶ Generate table name dynamically (c.f.
table_function()
).- Return type
- Parameters
model_class (peewee.Model) –
-
-
class
darc.model.abc.
BaseMetaWeb
[source]¶ Bases:
darc.model.abc.BaseMeta
Basic metadata for data models of data submission.
-
table_function
()¶ Generate table name dynamically (c.f.
table_function()
).- Return type
- Parameters
model_class (peewee.Model) –
-
-
class
darc.model.abc.
BaseModel
(*args, **kwargs)[source]¶ Bases:
peewee.Model
Base model with standard patterns.
Notes
The model will implicitly have a
AutoField
attribute named asid
.-
DoesNotExist
¶ alias of
darc.model.abc.BaseModelDoesNotExist
-
Meta
¶ Basic metadata for data models.
-
id
= <AutoField: BaseModel.id>¶
-
-
class
darc.model.abc.
BaseModelWeb
(*args, **kwargs)[source]¶ Bases:
darc.model.abc.BaseModel
Base model with standard patterns for data submission.
Notes
The model will implicitly have a
AutoField
attribute named asid
.-
DoesNotExist
¶ alias of
darc.model.abc.BaseModelWebDoesNotExist
-
Meta
¶ Basic metadata for data models.
-
id
= <AutoField: BaseModelWeb.id>¶
-
Miscellaneous Utilities¶
The darc.model.utils
module contains several miscellaneous
utility functions and data fields.
-
class
darc.model.utils.
IPField
(null=False, index=False, unique=False, column_name=None, default=None, primary_key=False, constraints=None, sequence=None, collation=None, unindexed=False, choices=None, help_text=None, verbose_name=None, index_type=None, db_column=None, _hidden=False)[source]¶ Bases:
peewee.IPField
IP data field.
-
db_value
(val)[source]¶ Dump the value for database storage.
- Parameters
value – Source IP address instance.
val (Optional[Union[str, ipaddress.IPv4Address, ipaddress.IPv6Address]]) –
- Return type
- Returns
Integral representation of the IP address.
-
-
class
darc.model.utils.
IntEnumField
(null=False, index=False, unique=False, column_name=None, default=None, primary_key=False, constraints=None, sequence=None, collation=None, unindexed=False, choices=None, help_text=None, verbose_name=None, index_type=None, db_column=None, _hidden=False)[source]¶ Bases:
peewee.IntegerField
enum.IntEnum
data field.-
choices
: enum.IntEnum¶ The original
enum.IntEnum
class.
-
-
class
darc.model.utils.
JSONField
(null=False, index=False, unique=False, column_name=None, default=None, primary_key=False, constraints=None, sequence=None, collation=None, unindexed=False, choices=None, help_text=None, verbose_name=None, index_type=None, db_column=None, _hidden=False)[source]¶ Bases:
playhouse.mysql_ext.JSONField
JSON data field.
-
class
darc.model.utils.
PickleField
(null=False, index=False, unique=False, column_name=None, default=None, primary_key=False, constraints=None, sequence=None, collation=None, unindexed=False, choices=None, help_text=None, verbose_name=None, index_type=None, db_column=None, _hidden=False)[source]¶ Bases:
peewee.BlobField
Pickled data field.