diff options
author | rubenwardy <rw@rubenwardy.com> | 2020-07-17 20:48:51 +0100 |
---|---|---|
committer | rubenwardy <rw@rubenwardy.com> | 2020-07-17 20:48:51 +0100 |
commit | 6a674c3c79437c7b4829947c67dd7f14b32c1941 (patch) | |
tree | 0830107ee78e80e61312c90c35a84c6154f6970a /app/models.py | |
parent | 0ac2827468a5d18536a9066033e0ad4a4767edbb (diff) | |
download | cheatdb-6a674c3c79437c7b4829947c67dd7f14b32c1941.tar.xz |
Add Content Warnings
Diffstat (limited to 'app/models.py')
-rw-r--r-- | app/models.py | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/app/models.py b/app/models.py index e6ff6f0..b2dbcc0 100644 --- a/app/models.py +++ b/app/models.py @@ -358,6 +358,11 @@ Tags = db.Table("tags", db.Column("package_id", db.Integer, db.ForeignKey("package.id"), primary_key=True) ) +ContentWarnings = db.Table("content_warnings", + db.Column("content_warning_id", db.Integer, db.ForeignKey("content_warning.id"), primary_key=True), + db.Column("package_id", db.Integer, db.ForeignKey("package.id"), primary_key=True) +) + maintainers = db.Table("maintainers", db.Column("user_id", db.Integer, db.ForeignKey("user.id"), primary_key=True), db.Column("package_id", db.Integer, db.ForeignKey("package.id"), primary_key=True) @@ -488,6 +493,9 @@ class Package(db.Model): tags = db.relationship("Tag", secondary=Tags, lazy="select", backref=db.backref("packages", lazy=True)) + content_warnings = db.relationship("ContentWarning", secondary=ContentWarnings, lazy="select", + backref=db.backref("packages", lazy=True)) + releases = db.relationship("PackageRelease", backref="package", lazy="dynamic", order_by=db.desc("package_release_releaseDate")) @@ -816,6 +824,23 @@ class MetaPackage(db.Model): return retval + +class ContentWarning(db.Model): + id = db.Column(db.Integer, primary_key=True) + name = db.Column(db.String(100), unique=True, nullable=False) + title = db.Column(db.String(100), nullable=False) + description = db.Column(db.String(500), nullable=False) + + def __init__(self, title, description=""): + self.title = title + self.description = description + + import re + regex = re.compile("[^a-z_]") + self.name = regex.sub("", self.title.lower().replace(" ", "_")) + + + class Tag(db.Model): id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(100), unique=True, nullable=False) |