示例#1
0
class Animal(db.Model):
    __tablename__ = 'animals'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(75))
    scientific_name = db.Column(db.String(75))
    description = db.Column(db.String(800))
    image_path = db.Column(db.String(100))

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

    def save_changes(self, file):
        if file:
            filename = secure_filename(file.filename)
            fileExtension = filename.rsplit('.', 1)[1]
            randomFilename = str(uuid.uuid1())
            filename = randomFilename + '.' + fileExtension
            try:
                # TODO: Get a blob client and upload the blob
                blob_client = blob_service.get_blob_client(
                    container=blob_container, blob=filename)
                blob_client.upload_blob(file)
                # check if an image path already exists:
                if self.image_path:
                    # TODO: Get a blob client and delete the previous blob
                    blob_client = blob_service.get_blob_client(
                        container=blob_container, blob=self.image_path)
                    blob_client.delete_blob()
                    # pass
            except Exception as err:
                flash(err)
            # set image path to the new file name:
            self.image_path = filename
        # commit everything to db:
        db.session.commit()
示例#2
0
class Animal(db.Model):
    __tablename__ = 'animals'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(75))
    scientific_name = db.Column(db.String(75))
    description = db.Column(db.String(800))
    image_path = db.Column(db.String(100))

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

    def save_changes(self, file):
        if file:
            filename = secure_filename(file.filename)
            fileExtension = filename.rsplit('.', 1)[1]
            randomFilename = str(uuid.uuid1())
            filename = randomFilename + '.' + fileExtension
            try:
                blob_client = blob_service.get_blob_client(
                    container=blob_container, blob=filename)
                blob_client.upload_blob(file)
                if self.image_path:
                    blob_client = blob_service.get_blob_client(
                        container=blob_container, blob=self.image_path)
                    blob_client.delete_blob()
            except Exception as err:
                flash(err)
            self.image_path = filename
        db.session.commit()
示例#3
0
class Animal(db.Model):
    __tablename__ = 'animals'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(75))
    scientific_name = db.Column(db.String(75))
    description = db.Column(db.String(800))
    image_path = db.Column(db.String(100))

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

    def save_changes(self, file):
        if file:
            filename = secure_filename(file.filename)
            fileExtension = filename.rsplit('.', 1)[1]
            randomFilename = str(uuid.uuid1())
            filename = randomFilename + '.' + fileExtension
            try:
                # TODO: Get a blob client and upload the blob
                pass
                if self.image_path:
                    # TODO: Get a blob client and delete the previous blob
                    pass
            except Exception as err:
                flash(err)
            self.image_path = filename
        db.session.commit()
class Animal(db.Model):
    __tablename__ = 'animals'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(75))
    scientific_name = db.Column(db.String(75))
    description = db.Column(db.String(800))
    image_path = db.Column(db.String(100))

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

    def save_changes(self, file):
        if file:
            filename = secure_filename(file.filename)
            fileExtension = filename.rsplit('.', 1)[1]
            randomFilename = str(uuid.uuid1())
            filename = randomFilename + '.' + fileExtension
            try:
                # TODO: Get a blob client and upload the blob

                # blob_container = app.config['BLOB_CONTAINER']
                # storage_url = f'https://{app.config["BLOB_ACCOUNT"]}.blob.core.windows.net'

                # blob_service = BlobServiceClient(account_url=storage_url
                #                                 , credential = app.config['BLOB_STORAGE_KEY'])

                blob_client = blob_service.get_blob_client(
                    container=blob_container, blob=filename)

                print("TRYING TO UPLOAD ------------------")
                print(f"Filename: {filename}")
                blob_client.upload_blob(file)
                print("SUCCESSFUL UPLOAD ------------------")
                if self.image_path:
                    # TODO: Get a blob client and delete the previous blob
                    print(f"self.image_path is truthy: {self.image_path}")
                    blob_client = blob_service.get_blob_client(
                        container=blob_container, blob=self.image_path)

                    blob_client.delete_blob()

            except Exception as err:
                flash(err)
            self.image_path = filename
        db.session.commit()