class User(db.Document, UserMixin):
    roles = db.ListField(db.ReferenceField(Role))
    email = db.StringField(max_length=255, unique=True)
    accessGroupType = db.StringField(max_length=80)
    #accessGroupName = db.StringField(max_length=80)
    profilePicURL = db.StringField()
    name = db.StringField(max_length=150)
    userValidity = db.StringField(max_length=12)
    refreshSecret = db.LongField()
    active = db.BooleanField(default=True)
    fingerID = db.LongField()
    password = db.StringField()
    meta = {'collection': 'users', 'queryset_class': BaseQuerySet}
示例#2
0
class User(db.Document):
    name = db.StringField()
    email = db.StringField(unique=True)
    hashedPassword = db.StringField()
    refreshSecret = db.LongField()
    role = db.StringField()
    meta = {'collection': 'User'}
示例#3
0
文件: payment.py 项目: hannn0919/test
class Payment(db.Document):
    payer_id = db.ReferenceField(User, required=True)
    transaction_id = db.LongField(required=True, unique=True)
    amount = db.IntField(required=True, min_value=1, max_value=100000)
    currency = db.StringField(required=True)
    confirm = db.BooleanField(required=True)
    create_time = db.DateTimeField(default=datetime.datetime.utcnow())
示例#4
0
class Message(db.Document):

    from_user = db.ReferenceField(User, db_field="fu", reverse_delete_rule=CASCADE)
    to_user = db.ReferenceField(User, db_field="tu", default=None, reverse_delete_rule=CASCADE)
    post = db.StringField(db_field="pt", max_length=1024)
    live = db.BooleanField(db_field="l", default=None)
    create_date = db.LongField(db_field="c", default=now())
    images = db.ListField(db_field="is", default=None)
    parent = db.ObjectIdField(db_field="p", default=None)
    message_type = db.IntField(db_field="mt", default=POST, choices=MESSAGE_TYPE)

    @property
    def likes(self):
        return Message.objects.filter(parent=self.id, message_type=LIKE).order_by("-create_date")

    @property
    def comments(self):
        return Message.objects.filter(parent=self.id, message_type=COMMENT).order_by("create_date")

    @property
    def text_linkified(self):
        return linkify_text(self.post)

    @property
    def human_timestamp(self):
        return ms_stamp_humanize(self.create_date)

    def post_image_src(self, images_time_stamp, size):
        if self.images:
            profile_img = join_path(STATIC_IMAGE_URL, 'posts', "{}.{}.{}.png".format(self.id, images_time_stamp, size))
            return profile_img.replace("\\", '/') # mostly for windows because windows uses a black slash to save.

    meta = {
        'indexes': [("from_user", "to_user", "-create_date", "message_type", "parent", "live")]
    }
示例#5
0
class Feed(db.Document):

    user = db.ReferenceField(User, db_field="u", reverse_delete_rule=CASCADE)
    message = db.ReferenceField(Message, db_field="m", reverse_delete_rule=CASCADE)
    create_date = db.LongField(db_field="cd", default=timestamp())

    meta = {
        "indexes": [("user", "-create_date")]
    }
示例#6
0
class Feed(db.Document):
    # the owner of the message
    user = db.ReferenceField(User,
                             db_field="user",
                             reverse_delete_rule=CASCADE)
    message = db.ReferenceField(Message,
                                db_field="message",
                                reverse_delete_rule=CASCADE)
    create_date = db.LongField(db_field="create_date", default=utc_now_ts_ms())

    meta = {'indexes': [('user', '-create_date')]}
示例#7
0
class User(db.Document):
    email = db.StringField(max_length=255, unique = True)
    accessGroup = db.StringField(max_length=255)
    active = db.BooleanField(default=True)
    confirmed_at = db.DateTimeField()
    picture = db.StringField()
    userExpiry = db.StringField()
    userID = db.StringField()
    name = db.StringField(max_length=255)
    refreshSecret = db.LongField()
    roles = db.StringField()
示例#8
0
class User(UserMixin, db.Document):
    account = db.StringField(required=True, unique=True, min_length=4, max_length=20)
    password = db.StringField(required=True)
    name = db.StringField(required=True, min_length=2, max_length=20)
    store_name = db.StringField(required=True, min_length=2, max_length=20)
    icon = db.StringField(required=True, default="default.png")
    email = db.StringField(required=True, unique=True)
    phone = db.StringField(required=True, max_length=15)
    birth = db.DateTimeField(required=True)
    address = db.StringField(required=True, max_length=50)
    prefer_begin_time = db.StringField(required=True, max_length=10)
    prefer_end_time = db.StringField(requried=True, max_length=10)
    status = db.IntField(required=True, default=0)
    hicoin = db.LongField(required=True, min_value=0, default=0)
    reset_token = db.StringField(null=True)
    create_time = db.DateTimeField(default=datetime.datetime.utcnow()+datetime.timedelta(hours=8))
示例#9
0
class User(UserMixin, db.Document):
    account = db.StringField(required=True,
                             unique=True,
                             min_length=4,
                             max_length=20)
    password = db.StringField(required=True)
    name = db.StringField(required=True, min_length=2, max_length=20)
    store_name = db.StringField(required=True, min_length=2, max_length=20)
    icon = db.StringField(required=True, default="default.png")
    email = db.StringField(required=True, unique=True)
    phone = db.StringField(required=True, max_length=15)
    birth = db.DateTimeField(required=True)
    address = db.ListField(db.EmbeddedDocumentField(Address), default=list)
    status = db.IntField(required=True, default=0)
    hicoin = db.LongField(required=True, min_value=0, default=0)
    reset_token = db.StringField(null=True)
    create_time = db.DateTimeField(default=datetime.datetime.utcnow())
示例#10
0
class Message(db.Document):
    from_user = db.ReferenceField(User,
                                  db_field="from_user",
                                  reverse_delete_rule=CASCADE)
    to_user = db.ReferenceField(User,
                                db_field="to_user",
                                default=None,
                                reverse_delete_rule=CASCADE)
    text = db.StringField(db_field="text", max_length=1024)
    live = db.BooleanField(db_field="live", default=None)
    create_date = db.LongField(db_field="create_date", default=utc_now_ts_ms())
    parent = db.ObjectIdField(db_field="parent", default=None)
    images = db.ListField(db_field="images")
    message_type = db.IntField(db_field='message_type',
                               default=POST,
                               choices=MESSAGE_TYPE)

    @property
    def text_linkified(self):
        return linkify(self.text)

    @property
    def human_timestamp(self):
        return ms_stamp_humanize(self.create_date)

    @property
    def comments(self):
        return Message.objects.filter(
            parent=self.id, message_type=COMMENT).order_by('create_date')

    @property
    def likes(self):
        return Message.objects.filter(
            parent=self.id, message_type=LIKE).order_by('-create_date')

    def post_imgsrc(self, image_ts, size):
        return url_for('static',
                       filename=os.path.join(
                           'images', 'posts',
                           '%s.%s.%s.png' % (self.id, image_ts, size)))

    meta = {
        'indexes': [('from_user', 'to_user', '-create_date', 'parent',
                     'message_type', 'live')]
    }
示例#11
0
class Misc(db.EmbeddedDocument):
    RTC = db.LongField()
    snowDepth = db.FloatField()
    windSpeed = db.FloatField()
    ambientTemp = db.FloatField()
    boardTemp = db.FloatField()
示例#12
0
class Events(db.EmbeddedDocument):
    time = db.LongField()
    desc = db.StringField()