Example #1
0
class User(db.Model, UserMixin):
    __tablename__ = 'users'
    id = db.Column(db.Integer, primary_key=True)

    # User authentication information (required for Flask-User)
    email = db.Column(db.Unicode(255),
                      nullable=False,
                      server_default=u'',
                      unique=True)
    password = db.Column(db.String(255), nullable=False, server_default='')
    actiu = db.Column(db.Boolean(), nullable=False, server_default='0')

    # User information
    actiu = db.Column('is_active',
                      db.Boolean(),
                      nullable=False,
                      server_default='0')
    nom = db.Column(db.Unicode(50), nullable=False, server_default=u'')
    # Relationships
    roles = db.relationship('Role',
                            secondary='users_roles',
                            backref=db.backref('users', lazy='dynamic'))

    def __str__(self):
        return u"Nom : {name};  Email: {email})".format(name=self.nom,
                                                        email=self.email)
Example #2
0
class Tag(db.Model):
    __tablename__ = 'Tag'

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String, unique=True, nullable=False)
    photos = db.relationship('Photo',
                             secondary=photo_tags,
                             backref=db.backref('Tag', lazy=True))
Example #3
0
class Vokabel(db.Model):

	id = db.Column('wort_id', db.Integer, primary_key=True)
	wort = db.Column(db.String(45))
	bedeutung = db.Column(db.String(45))
	beispiel = db.Column(db.String(250))
	quelle_id = db.Column(db.Integer, db.ForeignKey('quelle.id'))

	quelle = db.relationship("Quelle", backref=db.backref("Vokabel", lazy=True))
Example #4
0
class Document(db.Model, BlobMixin):
    __tablename__ = 'documents'

    id = db.Column(db.Integer, primary_key=True)
    creat = db.Column(db.DateTime, server_default=db.func.now())
    nom = db.Column(db.Unicode(length=255), nullable=False, unique=True)
    compartit = db.Column(db.Boolean(), nullable=False, server_default='0')
    clients = db.relationship('User',
                              secondary='users_documents',
                              backref=db.backref('documents', lazy='dynamic'))
    tipus_id = db.Column(db.Integer(), db.ForeignKey('tipus_document.id'))
    tipus = db.relationship('TipusDocument', foreign_keys=tipus_id)

    def __str__(self):
        return u"nom: {name}; document: {filename})".format(
            name=self.nom, filename=self.filename)

    def __lt__(self, other):
        return self.creat > other.creat
Example #5
0
class User(db.Model):
    id = db.Column(db.Integer(), primary_key=True)
    name = db.Column(db.String(255))
    email = db.Column(db.String(255), unique=True)
    password = db.Column(db.String(255))
    offers = db.relationship('Offer', backref='user.creator')
    requests = db.relationship('Request', backref='user.creator')
    offers_history = db.relationship('Offer',
                                     secondary=offers_history_table,
                                     backref=db.backref('passenger_list',
                                                        lazy='dynamic'))

    def __init__(self, name, email, password):
        self.email = email
        self.name = name
        self.active = True
        self.password = User.hashed_password(password)

    @staticmethod
    def hashed_password(password):
        return bcrypt.generate_password_hash(password).decode("utf-8")

    @staticmethod
    def get_user_with_email_and_password(email, password):
        user = User.query.filter_by(email=email).first()
        if user and bcrypt.check_password_hash(user.password, password):
            return user
        else:
            return None

    @staticmethod
    def get_users():
        users = User.query.all()
        #users = users.append([User.query.filter([User.requests] > None).all()])
        print(users)
        return {
            x.id: {
                'name': x.name,
                'email': x.email + '@marlboro.edu'
            }
            for x in users
        }
Example #6
0
class Photo(db.Model):
    __tablename__ = 'Photo'

    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey('User.id'))
    filename = db.Column(db.String, default=None, nullable=True)
    url = db.Column(db.String, default=None, nullable=True)
    date_created = db.Column(db.DateTime, default=datetime.utcnow)
    date_updated = db.Column(db.DateTime, default=datetime.utcnow)
    caption = db.Column(db.String, default=None, nullable=True)
    tags = db.relationship('Tag',
                           secondary=photo_tags,
                           lazy='subquery',
                           backref=db.backref('Photo', lazy=True))
    likes = db.relationship('Like', backref='Photo', lazy=True)

    def __init__(self, user_id, filename=None, url=None, caption=None):
        self.user_id = user_id
        self.filename = filename
        self.url = url
        self.caption = caption