| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- import tortoise.fields
- from .constants import constants
- class field_generator:
- @staticmethod
- def id() -> tortoise.fields.IntField:
- return tortoise.fields.IntField(primary_key = True)
- @staticmethod
- def name() -> tortoise.fields.TextField:
- return tortoise.fields.TextField(max_lenght = 30)
- @staticmethod
- def password() -> tortoise.fields.TextField:
- return tortoise.fields.TextField(max_lenght = 256)
- @staticmethod
- def surname() -> tortoise.fields.TextField:
- return tortoise.fields.TextField(max_lenght = 30)
- @staticmethod
- def nick() -> tortoise.fields.TextField:
- return tortoise.fields.TextField(max_lenght = 20)
- @staticmethod
- def description() -> tortoise.fields.TextField:
- return tortoise.fields.TextField(max_lenght = 4096)
-
- @staticmethod
- def phone_number() -> tortoise.fields.TextField:
- return tortoise.fields.TextField(max_lenght = 15)
- @staticmethod
- def barcode() -> tortoise.fields.TextField:
- return tortoise.fields.TextField(max_lenght = 13)
- @staticmethod
- def email() -> tortoise.fields.TextField:
- return tortoise.fields.TextField(max_lenght = 30)
- @staticmethod
- def apikey() -> tortoise.fields.TextField:
- return tortoise.fields.TextField(max_lenght = 280)
- @staticmethod
- def secret() -> tortoise.fields.TextField:
- return tortoise.fields.TextField(max_lenght = 256)
- @staticmethod
- def permissions() -> tortoise.fields.BooleanField:
- return tortoise.fields.BooleanField()
- @staticmethod
- def stock() -> tortoise.fields.IntField:
- return tortoise.fields.IntField
- @staticmethod
- def __connected_names(target: type, field: str | None) -> [str, str]:
- name = target.__name__
- model_name = constants.app_name() + "." + name
- related_name = constants.related_name(name, field)
- return model_name, related_name
- @classmethod
- def connected_many(
- cls,
- target: type,
- field: str | None = None
- ) -> tortoise.fields.ManyToManyField:
- model, related = cls.__connected_names(target, field)
- return tortoise.fields.ManyToManyField(
- model,
- related_name = related
- )
- @classmethod
- def connected_single(
- cls,
- target: type,
- field: str | None = None
- ) -> tortoise.fields.ForeignKeyField:
- model, related = cls.__connected_names(target, field)
- return tortoise.fields.ForeignKeyField(
- model,
- related_name = related
- )
|