summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Sulfrian <alex@spline.inf.fu-berlin.de>2013-09-04 15:37:24 +0000
committerpad <pad@vm-pad-b.spline.inf.fu-berlin.de>2013-09-04 15:41:35 +0000
commitd9ee2c28f858a5b97d00a9e4d56a4ac4ad269265 (patch)
tree08e57a87d4fe62e1ec22c5fb4b8925fdd30e1274
parentb1fed67c18f3cfdfbfdbf4cbe14c01db0a449d74 (diff)
downloadpadlite-teams-d9ee2c28f858a5b97d00a9e4d56a4ac4ad269265.tar.gz
padlite-teams-d9ee2c28f858a5b97d00a9e4d56a4ac4ad269265.tar.bz2
padlite-teams-d9ee2c28f858a5b97d00a9e4d56a4ac4ad269265.zip
modes: add model for group (with many-to-many member model)
-rw-r--r--models.py20
1 files changed, 18 insertions, 2 deletions
diff --git a/models.py b/models.py
index 6ed3b48..b59ae66 100644
--- a/models.py
+++ b/models.py
@@ -1,4 +1,4 @@
-from peewee import CharField, DateTimeField, BooleanField
+from peewee import CharField, DateTimeField, BooleanField, ForeignKeyField
from peewee import create_model_tables
from datetime import datetime
from app import db
@@ -14,5 +14,21 @@ class User(db.Model):
def __unicode__(self):
return self.username
+class Group(db.Model):
+ name = CharField(unique=True)
+ api_id = CharField(null=True)
+
+ def __unicode__(self):
+ return self.name
+
+class Member(db.Model):
+ group = ForeignKeyField(Group, related_name='members')
+ user = ForeignKeyField(User, related_name='groups')
+ manager = BooleanField(default=False)
+ admin = BooleanField(default=False)
+
+ def __unicode__(self):
+ return "%s member of %s" % (self.user.username, self.group.name)
+
def create_tables():
- create_model_tables([User], fail_silently = True)
+ create_model_tables([User, Group, Member], fail_silently = True)