2022-12-17 07:36:47 -05:00
|
|
|
from peewee import DateTimeField, ForeignKeyField, Model, CharField, BigIntegerField, DateField
|
2022-11-26 12:22:25 -05:00
|
|
|
from playhouse.db_url import connect
|
2022-08-29 12:10:44 -04:00
|
|
|
|
2022-12-17 07:36:47 -05:00
|
|
|
from datetime import date, datetime
|
2022-11-26 12:22:25 -05:00
|
|
|
from config import db_url
|
2022-12-17 07:36:47 -05:00
|
|
|
|
|
|
|
|
2022-11-26 12:22:25 -05:00
|
|
|
db = connect(db_url)
|
2022-08-29 12:10:44 -04:00
|
|
|
|
|
|
|
class WebUser(Model):
|
|
|
|
username = CharField()
|
|
|
|
password_hash = CharField()
|
|
|
|
|
|
|
|
class Meta:
|
|
|
|
db_table = "webusers"
|
|
|
|
database = db
|
2022-12-11 08:51:44 -05:00
|
|
|
|
|
|
|
class Member(Model):
|
|
|
|
user_id = BigIntegerField()
|
|
|
|
first_name = CharField()
|
|
|
|
username = CharField(null=True)
|
|
|
|
|
|
|
|
role = CharField(default="member")
|
|
|
|
|
|
|
|
warns = BigIntegerField(default=0)
|
|
|
|
|
|
|
|
joined = DateField(default=date.today())
|
2022-08-29 12:10:44 -04:00
|
|
|
|
2022-12-11 08:51:44 -05:00
|
|
|
|
|
|
|
class Meta:
|
|
|
|
db_table = "members"
|
|
|
|
database = db
|
2022-08-29 12:10:44 -04:00
|
|
|
|
2022-12-11 08:51:44 -05:00
|
|
|
class Message(Model):
|
2022-12-17 07:36:47 -05:00
|
|
|
user = ForeignKeyField(Member,lazy_load=True)
|
2022-12-14 09:12:57 -05:00
|
|
|
timestamp = DateTimeField(default=datetime.now())
|
|
|
|
|
2022-12-11 08:51:44 -05:00
|
|
|
class Meta:
|
|
|
|
db_table = "messages"
|
|
|
|
database = db
|
2022-08-29 12:10:44 -04:00
|
|
|
|
2022-11-26 12:22:25 -05:00
|
|
|
def build_database():
|
2022-12-14 09:12:57 -05:00
|
|
|
db.create_tables([WebUser,Message])
|