コード例 #1
0
class Goods(Document, EmbeddedDocument):
    name = StringField(max_length=140)
    description = StringField()
    price = FloatField()
    picture1 = ImageField()
    picture2 = ImageField()
    picture3 = ImageField()
コード例 #2
0
ファイル: location_in_store.py プロジェクト: PR-Skate/Tracker
class LocationInStore(BaseRecord):
    department = StringField(
        required=True, unique_with=['aisle', 'bay', 'tower', 'fkStoreNumber'])
    aisle = StringField(required=True)
    bay = StringField(required=True)
    tower = StringField(required=True)
    level = StringField(required=False,
                        allow_null=True,
                        allow_blank=True,
                        blank=True,
                        null=True)
    other = StringField(
        required=False)  # only for customers besides home deopt
    plumbingInLocation = BooleanField(default=False)
    plumbingPicturePath = ImageField(default=None)
    plumbingPicturePath2 = ImageField(default=None)
    electricalInLocation = BooleanField(default=False)
    electricalPicturePath = ImageField(default=None)
    electricalPicturePath2 = ImageField(default=None)
    fkMaterialItems = ListField(ReferenceField(
        MaterialItem, dbref=False))  # should be a series of drop downs
    # where the there are no duplicate references
    fkStoreNumber = ReferenceField(document_type=Store,
                                   required=True,
                                   dbref=False)
    meta = {'collection': 'LocationInStore'}

    def __str__(self):
        return f'Dept:{self.department} - Bay:{self.bay} - Tower:{self.tower} - Level: {self.level}'
コード例 #3
0
class ScopeOfWork(BaseRecord):
    GB_Counter = IntField(default=0, min_value=0)
    GB_CounterBillable = IntField(default=0, min_value=0)
    SOWPicturePath = ImageField(required=True)
    wrongLocation = BooleanField(default=False)
    ConcretePatchNeeded = BooleanField(default=False)
    fkRightSOWID = ReferenceField('self', default=None,
                                  dbref=False)  # pop-up to fill out blank form
    fkStatusID = ReferenceField(ScopeOfWorkStatus, required=True, dbref=False)
    materialsOrderByInspector = StringField()  # multiline
    completedPicturePath = ImageField(default=None)
    dateFieldEditedStatus = DateField(default=None)
    timeFieldEditedStatus = DateTimeField(default=None)
    approvedBilling = BooleanField(default=False)
    fkInstallerID = ReferenceField(Employee, default=None, dbref=False)
    fkRequireMaterials = ReferenceField(
        OrderMaterial, default=None,
        dbref=False)  # should also update the material list in store location
    fkLocationInStoreID = ReferenceField(LocationInStore,
                                         default=None,
                                         dbref=False)
    fkLocationInStoreChangedID = ReferenceField(LocationInStore,
                                                default=None,
                                                dbref=False)
    fkWorkOrderID = ReferenceField(WorkOrder, required=True, dbref=False)
    fkInitialLaborID = ReferenceField(LaborItem, required=True, dbref=False)
    fkExtraLaborID = ReferenceField(LaborItem, default=None, dbref=False)
    fkCorrectLaborID = ReferenceField(LaborItem, default=None, dbref=False)
    meta = {'collection': 'ScopeOfWork'}

    def __str__(self):
        return f'{self.fkInitialLaborID.description} x {self.fkInitialLaborID.quantity} {self.fkStatusID}'
コード例 #4
0
ファイル: models.py プロジェクト: venkathimavanth/OOAL
class Unlimited_Coupons(Document):
    company_id = StringField(max_length=200)
    coupon_code = StringField(max_length=200)
    created_date = DateTimeField()
    created_user = ObjectIdField()
    banner_image = ImageField()
    discription = StringField(max_length=1000)
コード例 #5
0
ファイル: Events.py プロジェクト: vincehar/Backend
class Events(Document):
    creator = ReferenceField('Users')
    participants = ListField(ReferenceField('Users'))
    nbrParticipantsMax = IntField(required=True)
    title = StringField(required=True)
    thumbnail = ImageField()
    start_date = DateTimeField(required=True)
    end_date = DateTimeField(required=True)
    address = EmbeddedDocumentField('Address')
    creation_date = DateTimeField(default=datetime.datetime.now())
    price = FloatField()
    categories = ListField(EmbeddedDocumentField('Categories'))
    eventStatus = EmbeddedDocumentField('EventStatus')
    tags = ListField(ReferenceField('Tags'))
    level = ReferenceField('Level')
    is_active = BooleanField(default=True)
    priv_or_pub = StringField(default="PRIVATE")
    description = StringField()

    def get_ref_date(self):
        return self.creation_date

    def get_thumbnail(self):
        if self.thumbnail:
            picture = base64.b64encode(self.thumbnail.read())
            return picture
        else:
            return None

    def add_participant(self, userAdded):
        self.participants.append(userAdded)
        self.save()
コード例 #6
0
class Posts(Document):
    title = StringField(required=True)
    image = ImageField(required=True, thumbnail_size=(400, 400, True))
    posted_datetime = DateTimeField(default=datetime.utcnow)
    author = ReferenceField('Users', reverse_delete_rule=CASCADE)

    comments = EmbeddedDocumentListField('Comments')
    rating = EmbeddedDocumentField('Ratings')

    def to_json(self):
        return {
            'id': str(self.id),
            'title': self.title,
            'posted_on': str(self.posted_datetime.replace(microsecond=0)),
            'author': self.author.name,
            'comment_count': len(self.comments),
            'rating': self.rating.score
        }

    meta = {
        'db_alias': 'core',
        'collection': 'posts',
        'indexes': ['title'],
        'ordering': ['-posted_datetime']
    }
コード例 #7
0
ファイル: models.py プロジェクト: venkathimavanth/OOAL
class Limited_Offer(Document):
    company_id = StringField(max_length=200)
    created_date = DateTimeField()
    created_user = ObjectIdField()
    offer_count = IntField()
    banner_image = ImageField()
    coupons = ListField(ObjectIdField())
コード例 #8
0
class TemplateImage(DynamicDocument):
    """
    Vulture's portal template image.
    """
    name = StringField(required=True, help_text=_('The name of the image'))
    content = ImageField(required=True, help_text=_('Image you can use in the portal templates'))
    uid = StringField(required=False, help_text=_('A unique identifier to get the image from portal'))

    def get_image_uri(self):
        """
        Return the URI of the image.
        :return: String containing the URI of the image.
        """
        try:
            url = 'portal_statics/{}'.format(self.uid)
        except:
            return None

        return url

    def get_as_html(self):
        """
        Return a pre-formatted html containing the image.
        :return: A string with pre-formatted html for the image
        """

        return "<img src='data:image/{};base64,{}'/>".format(self.content.format.lower(), base64.b64encode(self.content.read()))

    def create_preview_html(self):
        """
        Return a pre-formatted html containing the image.
        :return: A string with pre-formatted html for the image
        """

        return "data:image/{};base64,{}".format(self.content.format.lower(), base64.b64encode(self.content.read()))
コード例 #9
0
ファイル: models.py プロジェクト: neel-bp/remote_clinic_api
class Reports(db.Document):
    title = StringField()
    report_type = StringField()
    description = StringField()
    issued_by_org = StringField()
    issued_date = DateTimeField(default=datetime.utcnow)
    Image = ImageField()
    report_of = ReferenceField('Patient')
コード例 #10
0
class LocationData(Document):
    author = ReferenceField(User, reverse_delete_rule=CASCADE)
    name = StringField()
    desc = StringField()
    createdate = DateTimeField(default=d.datetime.utcnow)
    image = ImageField()
    longitude = IntField()
    latitude = IntField()
コード例 #11
0
class News(Document):
    author = ReferenceField(Account, reverse_delete_rule=CASCADE)
    discription = StringField(max_length=140)
    picture = ImageField()
    voice = FileField()
    comments = ListField(EmbeddedDocumentField(Comment))
    good = ReferenceField(Goods)
    time = DateTimeField(default=datetime.datetime.now)
コード例 #12
0
class LaborItem(BaseRecord):
    quantity = IntField(min_value=1)
    extraLaborPhoto = ImageField()
    fkArticleNumberState = ReferenceField(ArticleNumberState, dbref=False)
    meta = {'collection': 'LaborItem'}

    def __str__(self):
        description = ' - '.join(self.fkArticleNumberState.fkArticleNumber.description)
        return f' {description} x {self.quantity} = {self.quantity * self.fkArticleNumberState.price}'
コード例 #13
0
class Server(Document):
    name = StringField(required=True)
    description = StringField()
    public = BooleanField(required=True, default=False)

    server_id = StringField(required=True, unique=True,
                            regex=r'^[^:]+$')  # Not containing colons
    server_image = ImageField(size=(610, 610, True))

    revisions = ListField(EmbeddedDocumentField(ServerRevision), required=True)

    @classmethod
    def verify_fid(cls, fid):
        if fid.count(":") is not 1:
            return False

        split = fid.split(":")
        if len(split[0]) < 1 or len(split[1]) < 1:
            return False

        if not Server.server_id.validate(
                split[0]) or not ServerRevision.validate(split[1]):
            return False

        return True

    @classmethod
    def get_server(cls, fid):
        return cls.objects(server_id=fid.split(":")[0]).first()

    @classmethod
    def get_server_revision(cls, fid):
        return cls.get_server(fid).get_revision(fid)

    def get_revision(self, fid):
        rev_id = fid.split(":")[1]
        for revision in self.revisions:
            if revision.rev_id == rev_id:
                revision.server = self
                return revision
        return None

    def validate(self, *args, **kwargs):
        super(Server, self).validate(*args, **kwargs)

        rev_ids = []
        for revision in self.revisions:
            if revision.rev_id in rev_ids:
                raise ValidationError(
                    "Duplicate revision id in Server db document")
            rev_ids += revision.rev_id

    def __str__(self):
        return self.server_id
コード例 #14
0
ファイル: models.py プロジェクト: neel-bp/remote_clinic_api
class Patient(db.Document):
    username = StringField()
    password = StringField()
    name = StringField()
    surname = StringField()
    email = EmailField()
    phone = StringField()
    gender = StringField()
    image = ImageField()
    signup_date = DateTimeField(default=datetime.utcnow)
    online = BooleanField(default=False)
    address = EmbeddedDocumentField(Address)
コード例 #15
0
class Model1(Document):
    field_string = StringField(unique=True, required=True)
    field_integer = IntField()
    field_float = FloatField()
    field_date = DateTimeField()
    field_file = FileField()
    field_image = ImageField()

    def __repr__(self):
        return str(self.field_string)

    def __unicode__(self):
        return self.field_string
コード例 #16
0
class Club(Document):
    """This class takes 7 arguments and writes them to the Clubs Collection

    """
    club_id = StringField(required=True)
    client_id = StringField()
    competition_id = ListField(required=True)
    club_name_long = StringField(required=True)
    club_name_short = StringField(required=True)
    club_logo = ImageField(required=True, thumbnail_size=(300, 300, False))
    club_primary_color = StringField(required=True)
    club_secondary_color = StringField(required=True)
    club_teritary_color = StringField(required=False, default="")
コード例 #17
0
ファイル: models.py プロジェクト: neel-bp/remote_clinic_api
class DDocuments(db.Document):
    owner = ReferenceField('Doctor')
    owner_name = StringField()
    title = StringField(max_length=255)
    document_type = StringField(max_length=64)
    description = StringField(max_length=255)
    issued_by_org = StringField(max_length=255)
    issued_date = DateTimeField(default=datetime.utcnow)
    image = ImageField()
    verification_status = StringField(default='Pending')
    verified_by = ReferenceField('Operator')
    verification_date = DateTimeField()
    rejection_cause = StringField()
コード例 #18
0
ファイル: Preferences.py プロジェクト: vincehar/Backend
class Preferences(EmbeddedDocument):
    display_weeshes = BooleanField(default=True)
    display_events = BooleanField(default=True)
    search_distance = IntField(default=50)
    search_string = StringField(default='')
    selected_network = StringField(default='PUBLIC')
    background_picture = ImageField()

    def get_background_picture(self):
        if self.background_picture:
            picture = base64.b64encode(self.background_picture.read())
            return picture
        else:
            return None
コード例 #19
0
class ReferenceImage(Document):
    keypoints = ListField(ListField(), required=True)
    descriptors = ListField(ListField(FloatField()), required=True)
    #descriptors = ListField(BinaryField(), required=True)
    width = IntField(required=True)
    height = IntField(required=True)
    metadata = DynamicField()
    thumbnail = ImageField(size=(800, 600, True), collection_name='reference_thumbnails')

    def to_opencv_description(self):
        ocv_kp = [cv2.KeyPoint(o[0], o[1], o[2]) for o in self.keypoints]
        ocv_des = np.array(self.descriptors, dtype=np.float32)
        # For BRISK descriptors
        #ocv_des = np.asarray([np.fromstring(d, dtype=np.uint8) for d in self.descriptors])
        return [ocv_kp, ocv_des, self.id, self.width, self.height]
コード例 #20
0
class Contact(Document):
    name = StringField(max_length=60, required=True, unique=True)
    address = StringField(max_length=60)
    birthday = DateTimeField()
    personal_phone = StringField(max_length=20)
    personal_celphone = StringField(max_length=20)
    contact_group = ReferenceField(ContactGroup, required=True)
    gender = ReferenceField(Gender, required=True)
    tags = ListField(ReferenceField(Tags))
    file = FileField()
    image = ImageField(size=(350, 250, True), thumbnail_size=(30, 30, True))


    def month_year(self):
        date = self.birthday or mindate
        return datetime.datetime(date.year, date.month, 1) or mindate

    def year(self):
        date = self.birthday or mindate
        return datetime.datetime(date.year, 1, 1)

    def __repr__(self):
        return "%s : %s\n" % (self.name, self.contact_group)

    def file_show(self):
        if self.file:
            return Markup(
                '<a href="' + url_for('ContactModelView.mongo_download', pk=str(self.id)) + '">Download {0}</a>'.format(self.file.name))
        else:
            return Markup('')

    def image_show(self):
        if self.image:
            return Markup('<a href="' + url_for('ContactModelView.show',pk=str(self.id)) + \
                      '" class="thumbnail"><img src="' + url_for('ContactModelView.img', pk=str(self.id)) + \
                      '" alt="Photo" class="img-rounded img-responsive"></a>')
        else:
            return Markup('')

    def image_thumb_show(self):
        print self.image, self.id
        if self.image:
            return Markup('<a href="' + url_for('ContactModelView.show',pk=str(self.id)) + \
                      '" class="thumbnail"><img src="' + url_for('ContactModelView.img_thumb', pk=str(self.id)) + \
                      '" alt="Photo" class="img-rounded img-responsive"></a>')
        else:
            return Markup('')
コード例 #21
0
class Photo(Document):
    community_id: int = IntField(required=True)
    post_id: int = IntField(required=True)
    photo_id: int = IntField(required=True,
                             unique_with=['post_id', 'community_id'])

    likes_count: int = IntField(required=True)
    views_count: int = IntField(required=True)

    avg_batch_likes_count: float = FloatField(required=True)
    avg_batch_views_count: float = FloatField(required=True)

    image = ImageField(required=True)

    dt_created: datetime = DateTimeField(required=True,
                                         default=datetime.utcnow)
    dt_updated: datetime = DateTimeField(required=True,
                                         default=datetime.utcnow)
コード例 #22
0
ファイル: models.py プロジェクト: SavchenkoDima/web-bot
class Product(Document):
    title = StringField(max_length=255)
    description = StringField(max_length=1024)
    price = IntField(min_value=0)
    new_prise = IntField(min_value=0)
    is_discount = BooleanField(default=False)
    properties = EmbeddedDocumentField(Properties)
    category = ReferenceField(Category)
    photo_product = ImageField()

    @property
    def get_price(self):
        if self.is_discount:
            return str(self.new_prise / 100)
        return str(self.price / 100)

    @classmethod
    def get_discount_products(cls, **kwargs):
        return cls.objects(is_discount=True)
コード例 #23
0
class Users(Document):
    """
    Template for a mongoengine document, which represents a user.
    Password is automatically hashed before saving.

    :param email: unique required email-string value
    :param password: required string value, longer than 6 characters
    :param name: option unique string username
    :param phone: optional string phone-number, must be valid via regex
    :param roles: Roles object

    .. seealso:: :class:`Roles`, :class:`Phone`
    """

    email = EmailField(required=True, unique=True)
    password = StringField(required=True, min_length=6, regex=None)
    name = StringField()
    phone = PhoneField()
    image = ImageField(thumbnail_size=(128, 128, True))
    # default user is a student
    default_roles = {
        'student': True,
        'instructor': False,
        'organization': False,
        'admin': False
    }
    roles = EmbeddedDocumentField(Roles, default=Roles(**default_roles))

    def generate_pw_hash(self):
        self.password = generate_password_hash(
            password=self.password).decode('utf-8')

    # Use documentation from BCrypt for password hashing
    generate_pw_hash.__doc__ = generate_password_hash.__doc__

    def check_pw_hash(self, password: str) -> bool:
        return check_password_hash(pw_hash=self.password, password=password)

    # Use documentation from BCrypt for password hashing
    check_pw_hash.__doc__ = check_password_hash.__doc__
コード例 #24
0
class Events(Document):
    user_id = ReferenceField('Users')
    interested = ListField(ReferenceField('Users'))
    name = StringField(required=True)
    thumbnail = ImageField()
    start_date = DateTimeField(required=True)
    end_date = DateTimeField(required=True)
    address = EmbeddedDocumentField('Address')
    creation_date = DateTimeField(default=datetime.datetime.now())
    price = FloatField()
    categories = ListField(EmbeddedDocumentField('Categories'))
    eventStatus = EmbeddedDocumentField('EventStatus')
    tags = ListField(ReferenceField('Tags'))
    is_active = BooleanField(default=True)
    coordinates = EmbeddedDocumentField('Coordinates')

    def get_ref_date(self):
        return self.creation_date

    def get_picture(self):
        thumbnail = base64.b64encode(self.thumbnail.read())
        return thumbnail
コード例 #25
0
class Artist(Document):
    name = StringField(required=True, unique=True, max_length=100)
    image = ImageField(required=False)
    created_at = DateTimeField(default=datetime.now())

    meta = {'queryset_class': CustomQuerySet}

    def to_json(self, *args, **kwargs):
        media = kwargs.pop('media', '')
        data = self.to_mongo()

        if media:
            artist_name = '-'.join(re.split("[, \-!?:]+", self.name))
            file_name = os.path.join(
                IMAGE, '{}-{}.{}'.format(artist_name, DATE, 'jpg'))
            with open(file_name, 'wb') as image_file:
                image_file.write(self.image.read())
            data['image'] = file_name
        else:
            data.pop('image')
        data['created_at'] = data['created_at'].strftime(TIME_FORMAT)
        data.pop('_id')
        return json_util.dumps(data, *args, **kwargs)
コード例 #26
0
ファイル: models.py プロジェクト: neel-bp/remote_clinic_api
class Doctor(db.Document):
    name = StringField(max_length=255)
    surname = StringField(max_length=255)
    email = EmailField()
    username = StringField()
    password = StringField()
    tags = ListField(StringField())  # List of String TAGS
    phone = StringField(max_length=255)
    gender = StringField(max_length=32)
    address = EmbeddedDocumentField(Address)
    image = ImageField()
    signup_date = DateTimeField(default=datetime.utcnow)
    online = BooleanField(default=False)
    specialization = StringField(max_length=255)
    about = StringField(max_length=255)
    experience = StringField()
    pmdc_verified = BooleanField(default=False)
    pmdc_reg_num = StringField()
    verification_status = StringField(default='Pending')
    verified_by = ReferenceField('Operator')
    verification_date = DateTimeField()

    meta = {'indexes': ['$name']}
コード例 #27
0
class Bicycle(Document):
    '''
    Clase que define el modelo bicicleta
    '''
    name = StringField(required=True)
    price = FloatField(required=True)
    colors = ListField(StringField(), required=True)
    stock = IntField(default=1)
    use = StringField(default="General")
    image = ImageField(thumbnail_size=(320, 240, False))

    def json(self):
        '''
        Metodo que devuelve los atributos de la clase en formato json
        '''
        bicycle_dict = {
            'id':
            str(self.pk),
            "name":
            self.name,
            "price":
            self.price,
            "stock":
            self.stock,
            "colors":
            self.colors,
            "use":
            self.use,
            "img":
            str(base64.b64encode(self.image.read()), 'utf-8'),
            "thumbnail":
            str(base64.b64encode(self.image.thumbnail.read()), 'utf-8')
        }
        return bicycle_dict

    meta = {"indexes": ["name"]}
コード例 #28
0
class Menu(UserMixin, Document):
    meta = {'collection': 'Menu', 'queryset_class': BaseQuerySet}
    menu_name = StringField(max_length=50, required=True)
    menu_image = ImageField(max_length=20, required=True)
    menu_description = StringField(max_length=150, required=True)
コード例 #29
0
class Users(Document):
    """
    Main class representing the Users entities.
    This is the class in which everything is embedded.
    """
    user_id = ObjectIdField(default=ObjectId)
    user = EmbeddedDocumentField('User')
    picture = ImageField()
    preferences = EmbeddedDocumentField('Preferences')
    date_created = DateTimeField(default=datetime.datetime.now())
    current_coordinates = EmbeddedDocumentField('Coordinates')

    #friends = ListField(ReferenceField('UsersRelationships'))
    #wishes = ListField(ReferenceField('Wishes'))
    #logs = ListField(ReferenceField('Logs'))
    #messages = ListField(EmbeddedDocumentField('Messages'))
    #categories_Selected = ListField(EmbeddedDocumentField('Categories'))
    #medias = ListField(ReferenceField('Medias'))
    #events_Owned = ListField(ReferenceField('Events'))
    #interested_in = ListField(ReferenceField('Wishes'))

    def get_position(self):
        """
        Return formatted position
        #{ "lat" : 46.1954229 , "lng" : 6.1552161 }
        :return:
        """
        return "{'lat': " + str(
            self.current_coordinates.lat) + ", 'lng':" + str(
                self.current_coordinates.lat) + "}"

    def date_joined(self):
        """
        Get the date when the user has registered.
        :return: datetime.datetime
        """
        return self.user.date_joined

    def relate_to_user(self, user):
        """
        Method used to relate to another user, i.e follow a user.
        :param user: instance of Users class
        :return: self
        """
        rel = UsersRelationships(from_user=self,
                                 to_user=user,
                                 accepted=False,
                                 blocked=False)
        rel.save()
        return self

    def accept_follower(self, _users):
        """
        Method used to activate a relationship, i.e accept a follower
        :param user:
        :return:
        """

        self.save()
        return self

    def add_friend(self, _users):
        """

        :return:
        """
        relation = UsersRelationships(from_user=self,
                                      to_user=_users,
                                      accepted=False)
        relation.save()
        return self

    def create_wish(self, _title):
        """
        Method used to create a wish
        :param _title:
        :param _creation_date:
        :return: self
        """

        wish = Wishes(user_id=self.id,
                      title=_title,
                      creation_date=datetime.datetime.now())

        splitTitle = _title.split(' ')
        for word in splitTitle:
            if word.startswith('#'):
                tag = Tags.objects.get_or_create(title=word)
                wish.tags.append(tag[0])

        wish.save()

        #Connect and send message to the queue
        # Use plain credentials for authentication
        #myrabbit = rabbitmq()
        #myrabbit.create_connection()
        #myrabbit.publish_newweesh(wish.id,wish.user_id.user.username)
        #
        # myrabbit.close()
        return wish

    def create_event(self, **kwargs):

        if 'thumbnail' in kwargs:
            event = Events(user_id=self.id,
                           name=kwargs['eventName'],
                           start_date=kwargs['start_date'],
                           end_date=kwargs['end_date'],
                           thumbnail=kwargs['thumbnail'],
                           creation_date=datetime.datetime.now())
        else:
            event = Events(user_id=self.id,
                           name=kwargs['eventName'],
                           start_date=kwargs['start_date'],
                           end_date=kwargs['end_date'],
                           creation_date=datetime.datetime.now())

        splitTitle = kwargs['eventName'].split(' ')
        for word in splitTitle:
            if word.startswith('#'):
                tag = Tags.objects.get_or_create(title=word)
                event.tags.append(tag[0])
        event.save()
        #Connect and send message to the queue
        # Use plain credentials for authentication
        myrabbit = rabbitmq()
        myrabbit.create_connection()
        myrabbit.publish_newevent(event.id, event.user_id.user.username)
        myrabbit.close()
        #mqueue.publish_message('coco', 'New weesh created', channel, 'amq_fanout')
        #mqueue.close(connection)

        return event

    def interests_to_wish(self, _user, _wish):
        user = Users.objects.get(id=_user.id)
        wish = next((w for w in user.wishes if w.id == _wish.id), None)
        wish.add_interested(self)
        self.interested_in.append(wish)
        self.save()
        user.save()
        return self

    def add_media(self, _binaryMedia, _label, _event):
        media = Medias()
        self.medias.append(media)
        self.save()
        return self

    def my_wishes(self):
        return self.wishes

    def get_picture(self):
        picture = base64.b64encode(self.picture.read())
        return picture
コード例 #30
0
class Preferences(EmbeddedDocument):
    display_weeshes = BooleanField(default=True)
    display_events = BooleanField(default=True)
    search_distance = IntField(default=50)
    selected_network = StringField(default='PUBLIC')
    background_picture = ImageField()