from flask import Flask , redirect , url_for , request , render_template
import uuid
# Create the application.
APP = Flask ( __name__ )
# Define different routes of the application.
@APP.route ( ' /2ndpage ' , methods = [ ' GET ' , ' POST ' ] )
def drawPlz ( ) :
title = " Lost Stories "
name = request . form . get ( ' lostobject ' )
msg = " Sorry that you lost {name} . But {name} will be having fun somewhere. "
if request . method == ' POST ' :
args = request . args
print ( args . get ( " msg " ) )
id = args . get ( " id " )
image = request . form [ " data " ]
print ( image )
with open ( ' database/ ' + str ( id ) + ' .txt ' , ' a+ ' ) as db :
db . write ( f " { image } " )
return render_template ( " drawing.html " , title = title , msg = msg )
@APP.route ( ' / ' , methods = [ ' GET ' , ' POST ' ] )
def index ( ) :
title = " Lost Stories "
# If something is submitted through the form...
# ref: https://pythonbasics.org/flask-http-methods/
if request . method == ' POST ' :
id = uuid . uuid4 ( )
print ( id )
# Read the values from the form element.
name = request . form . get ( ' lostobject ' , ' nana ' )
text = request . form . get ( ' text ' , ' haha ' )
print ( text )
# date = request.form['dd-mm-yyyy'] Q.How can I include date? Or maybe general date input? Sometimes ppl do remember when they lose sth. and somethimes they do not know.
# Write the submitted data to a file, which is
# in this case a "csv" (comma seperated values) file
# that you can also open with spreadsheet software.
# Note that the file is opened in the mode "a+"
# which means that the Flask application will append values
# (and not overwrite the csv file).
with open ( ' database/ ' + str ( id ) + ' .txt ' , ' w ' ) as db :
db . write ( f " { name } \n { text } \n " )
msg = " Thanks! "
# return render_template('index.html', title=title, msg=msg)
return redirect ( url_for ( ' drawPlz ' , title = title , msg = msg , id = id ) )
# If the index page is loaded...
msg = " Please submite the form below. "
return render_template ( ' index.html ' , title = title , msg = msg )
if __name__ == ' __main__ ' :
APP . debug = True
APP . run ( port = 5000 )