class PlayerStatistic(Document): player_id = ObjectIdField(allow_none=False, required=True, unique=True) total_games = IntegerField( allow_none=False, required=False, default=0, validate=validate.Range( min=0, error= 'Field value cannot be represented by a negative integer value.')) wins = IntegerField( allow_none=False, required=False, default=0, validate=validate.Range( min=0, error= 'Field value cannot be represented by a negative integer value.')) loses = IntegerField( allow_none=False, required=False, default=0, validate=validate.Range( min=0, error= 'Field value cannot be represented by a negative integer value.')) rating = IntegerField( allow_none=False, required=False, default=0, validate=validate.Range( min=0, error= 'Field value cannot be represented by a negative integer value.'))
class TournamentData(Document): """MapData database document.""" tournament_id = IntegerField(required=True) signups_open = BooleanField(required=True) annoucement_id = IntegerField(required=True) class Meta: """MongoDb database collection name.""" collection_name = "TournamentData"
class Movies(Document): name = StringField(required=True, allow_none=False) popularity = IntegerField() director = StringField(required=True, allow_none=False) genre = ListField(StringField(required=True, allow_none=False)) imdb_score = IntegerField() movie_id = StringField(required=True, allow_none=False) insert_datetime = StringField(required=True, allow_none=False) update_datetime = StringField(required=True, allow_none=True) def pre_delete(self): print("Pre delete called")
class TimeAttackData(Document): """TournamentData database document.""" posted_by = IntegerField(required=True, unique=True) name = StringField(required=True) record = FloatField(required=True) attachment_url = StringField(required=True) class Meta: """MongoDb database collection name.""" collection_name = "TimeAttackData"
class MapData(Document): """MapData database document.""" code = StringField(required=True, unique=True) creator = StringField(required=True) map_name = StringField(required=True) posted_by = IntegerField(required=True) type = ListField(StringField(), required=True) desc = StringField() class Meta: """MongoDb database collection name.""" collection_name = "MapData"
class GameServer(Document): host = StringField(allow_none=False, required=True) port = IntegerField(allow_none=False, required=True) available_slots = IntegerField(allow_none=False, required=True) credentials = DictField(allow_none=False, required=False, default={}) game_mode = StringField(allow_none=False, required=True)
class Artist(Document): name = StringField(required=True, allow_none=False) toplam_sayi = IntegerField()
class GuildSettings(Document): guild_id = IntegerField(required=True) toggleable_roles = ListField(IntegerField()) # List of toggleable role IDs underage = ListField(IntegerField()) # List of IDs of underage users counters = DictField()