Пример #1
0
class UserUserfile(Base):
    """
    Relation between a user and a file
    """
    # create with:
    # UserUserfile(Userfile("folder","file"), user, permission=7)
    # check with:
    # uufile = session.query(UserUserfile).filter(UserUserfile.user_id==1,UserUserfile.userfile_id==2).first().permission
    __tablename__ = 'user_userfile'
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), primary_key=True)
    userfile_id = db.Column(db.Integer,
                            db.ForeignKey('userfile.id'),
                            primary_key=True)
    permission = db.Column(db.String(50))

    # bidirectional attribute/collection of "user"/"user_userfiles"
    user = db.relationship(User,
                           backref=db.backref("user_userfiles",
                                              cascade="all, delete-orphan"))

    # reference to the "Keyword" object
    userfile = db.relationship("Userfile")

    def __init__(self, userfile=None, user=None, permission=None):
        """
        Create a new releation between a user and a file

        :param Userfile userfile: The file for the relationship
        :param User user: the user for the relationship
        :param string permission: the permissions for the user
        """
        self.user = user
        self.userfile = userfile
        self.permission = permission
Пример #2
0
class Post(db.Model):
    __tablename__ = 'posts'
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(150))
    author = db.Column(db.String(75))
    body = db.Column(db.String(800))
    image_path = db.Column(db.String(100))
    timestamp = db.Column(db.DateTime, index=True, default=datetime.utcnow)
    user_id = db.Column(db.Integer, db.ForeignKey('users.id'))

    def __repr__(self):
        return '<Post {}>'.format(self.body)

    def save_changes(self, form, file, userId, new=False):
        self.title = form.title.data
        self.author = form.author.data
        self.body = form.body.data
        self.user_id = userId

        if file:
            filename = secure_filename(file.filename)
            fileextension = filename.rsplit('.', 1)[1]
            Randomfilename = id_generator()
            filename = Randomfilename + '.' + fileextension
            try:
                blob_service.create_blob_from_stream(blob_container, filename,
                                                     file)
                if self.image_path:
                    blob_service.delete_blob(blob_container, self.image_path)
            except Exception:
                flash(Exception)
            self.image_path = filename
        if new:
            db.session.add(self)
        db.session.commit()
Пример #3
0
class Income_Expense(db.Model):
    __tablename__ = 'income_expense'
    id = db.Column(db.Integer, primary_key=True)
    category = db.Column(db.String(150))
    date = db.Column(db.Date)
    amount = db.Column(db.Integer)
    user_id = db.Column(db.Integer, db.ForeignKey('users.id'))

    def __repr__(self):
        return '<Amount {}>'.format(self.amount)

    def save_changes(self, form, userId, new=False):
        self.category = form.category.data
        self.amount = form.amount.data
        self.date = form.date.data
        self.user_id = userId

        if new:
            db.session.add(self)
        db.session.commit()