Database memes

This commit is contained in:
2020-11-27 21:13:00 +01:00
parent e25c28b04c
commit 6eb2fe1879
13 changed files with 52 additions and 18 deletions

View File

@ -1,3 +1,4 @@
from .db import db
from .user import User
from .role import Role
from .item import Item

17
src/models/comment.py Normal file
View File

@ -0,0 +1,17 @@
#!/usr/bin/env python3
from sqlalchemy import func
from . import db
class Comment(db.Model):
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
timestamp = db.Column(db.TIMESTAMP, nullable=False, server_default=func.now())
commenter_id = db.Column(db.Integer, db.ForeignKey("user.id", ondelete="CASCADE"), nullable=False)
commenter = db.relationship("User", backref=db.backref("comments", lazy=True))
item_id = db.Column(db.Integer, db.ForeignKey("item.id", ondelete="CASCADE"), nullable=False)
item = db.relationship("Item", backref=db.backref("comments", lazy=True))
text = db.Text(4096, nullable=False)

13
src/models/db.py Normal file
View File

@ -0,0 +1,13 @@
#!/usr/bin/env python3
from flask_sqlalchemy import SQLAlchemy
"""
Databse object
"""
__author__ = '@tormakris'
__copyright__ = "Copyright 2020, UnstableVortex Team"
__module_name__ = "db"
__version__text__ = "1"
db = SQLAlchemy()

View File

@ -1,7 +1,7 @@
#!/usr/bin/env python3
from sqlalchemy import func
from utils import db
from . import db
"""
Item model
@ -16,4 +16,7 @@ __version__text__ = "1"
class Item(db.Model):
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
name = db.Column(db.String, nullable=False)
creation_date = db.Column(db.TIMESTAMP, nullable=False, server_default=func.now())
upload_date = db.Column(db.TIMESTAMP, nullable=False, server_default=func.now())
uploader_id = db.Column(db.Integer, db.ForeignKey("user.id", ondelete="CASCADE"), nullable=False)
uploader = db.relationship("User", backref=db.backref("uploads", lazy=True))

15
src/models/purchase.py Normal file
View File

@ -0,0 +1,15 @@
#!/usr/bin/env python3
from sqlalchemy import func
from . import db
class Purchase(db.Model):
id = db.Column(db.Integer, primary_key=True, autoincrement=True)
timestamp = db.Column(db.TIMESTAMP, nullable=False, server_default=func.now())
purchaser_id = db.Column(db.Integer, db.ForeignKey("user.id", ondelete="CASCADE"), nullable=False)
purchaser = db.relationship("User", backref=db.backref("purchases", lazy=True))
item_id = db.Column(db.Integer, db.ForeignKey("item.id", ondelete="CASCADE"), nullable=False)
item = db.relationship("Item", backref=db.backref("purchases", lazy=True))

View File

@ -1,7 +1,7 @@
#!/usr/bin/env python3
from flask_security import RoleMixin
from utils import db
from . import db
"""
Role model

View File

@ -2,7 +2,7 @@
from flask_security import UserMixin
from .role import roles_users
from utils import db
from . import db
"""
User model