I created a Flask form where I can upload an image. Then I need to convert that image to base64 string, but I'm always getting the same result. OUTPUT of my prints:
<FileStorage: '20190925_184412.jpg' ('image/jpeg')>
b''
And the code
from flask import Flask, render_template
from flask_wtf import FlaskForm
from wtforms import FileField
from flask_uploads import configure_uploads, IMAGES, UploadSet
import base64
app = Flask(__name__)
app.config['SECRET_KEY'] = 'thisisasecret'
app.config['UPLOADED_IMAGES_DEST'] = 'uploads/images'
images = UploadSet('images', IMAGES)
configure_uploads(app, images)
class MyForm(FlaskForm):
image = FileField('image')
@app.route('/', methods=['GET', 'POST'])
def index():
form = MyForm()
if form.validate_on_submit():
filename = images.save(form.image.data)
image_string = base64.b64encode(form.image.data.read())
print(form.image.data)
print(image_string)
return f'Filename: { filename }'
return render_template('index.html', form=form)