tux me up
This commit is contained in:
parent
03e6168855
commit
775adc6d57
BIN
static/content/glit_background.gif
Normal file
BIN
static/content/glit_background.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.2 KiB |
BIN
static/content/prompt.wav
Normal file
BIN
static/content/prompt.wav
Normal file
Binary file not shown.
20
templates/upload.html
Normal file
20
templates/upload.html
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html lang='en'>
|
||||||
|
<head>
|
||||||
|
<meta charset="utf-8" />
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
||||||
|
<title>Perma-Upload a picture</title>
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<form method="POST" enctype="multipart/form-data">
|
||||||
|
{{ imageuploadform.csrf_token }}
|
||||||
|
<fieldset class="fileupload-field">
|
||||||
|
{{ imageuploadform.image.label }}
|
||||||
|
{{ imageuploadform.image }}
|
||||||
|
{% for message in imageuploadform.image.errors %}
|
||||||
|
<div class="error">{{ message }}</div>
|
||||||
|
{% endfor %}
|
||||||
|
</fieldset>
|
||||||
|
{{ imageuploadform.submit }}
|
||||||
|
</form>
|
||||||
|
</body>
|
43
upload.py
Normal file
43
upload.py
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
import os
|
||||||
|
from flask import Flask, render_template, redirect, request
|
||||||
|
from flask_wtf import FlaskForm
|
||||||
|
from flask_wtf.file import FileAllowed, FileField
|
||||||
|
from wtforms import (
|
||||||
|
SubmitField,
|
||||||
|
)
|
||||||
|
|
||||||
|
# config me here
|
||||||
|
APP = Flask(__name__, static_folder="static")
|
||||||
|
APP.config["IMAGE_FOLDER"] = "static/images"
|
||||||
|
ALLOWED_FILES = ["jpg", "png", "gif", "webp"]
|
||||||
|
|
||||||
|
# don't config these lines
|
||||||
|
APP.config["SECRET_KEY"] = os.urandom(24)
|
||||||
|
|
||||||
|
class ImageUploadForm(FlaskForm):
|
||||||
|
"""Image upload form."""
|
||||||
|
image = FileField(
|
||||||
|
"Upload an image:",
|
||||||
|
validators=[FileAllowed(ALLOWED_FILES, "Images only!")],
|
||||||
|
)
|
||||||
|
submit = SubmitField("Submit")
|
||||||
|
|
||||||
|
|
||||||
|
def saveimage(image):
|
||||||
|
"""Save the image to the folder"""
|
||||||
|
image.save(os.path.join(APP.config["IMAGE_FOLDER"], image.filename))
|
||||||
|
|
||||||
|
|
||||||
|
@APP.route("/", methods=["GET", "POST"])
|
||||||
|
def index():
|
||||||
|
"""Upload route, a page to upload an image"""
|
||||||
|
imageuploadform = ImageUploadForm()
|
||||||
|
if request.method == "POST":
|
||||||
|
if imageuploadform.validate_on_submit():
|
||||||
|
saveimage(imageuploadform.image.data)
|
||||||
|
return render_template("upload.html", imageuploadform=imageuploadform)
|
||||||
|
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
APP.debug = True
|
||||||
|
APP.run(port=5000)
|
Loading…
Reference in New Issue
Block a user