You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
925 B
Python
45 lines
925 B
Python
# app.py
|
|
|
|
from flask import Flask
|
|
from flask import render_template
|
|
from flask import request
|
|
from flask_assets import Bundle
|
|
from flask_assets import Environment
|
|
|
|
from .todo import todos
|
|
|
|
app = Flask(__name__)
|
|
|
|
assets = Environment(app)
|
|
css = Bundle("src/main.css", output="dist/main.css")
|
|
js = Bundle("src/*.js", output="dist/main.js") # new
|
|
|
|
assets.register("css", css)
|
|
assets.register("js", js) # new
|
|
css.build()
|
|
js.build()
|
|
|
|
|
|
@app.route("/")
|
|
def homepage():
|
|
return render_template("index.html")
|
|
|
|
|
|
@app.route("/search", methods=["POST"])
|
|
def search_todo():
|
|
search_term = request.form.get("search")
|
|
|
|
if not len(search_term):
|
|
return render_template("todo.html", todos=[])
|
|
|
|
res_todos = []
|
|
for todo in todos:
|
|
if search_term in todo["title"]:
|
|
res_todos.append(todo)
|
|
|
|
return render_template("todo.html", todos=res_todos)
|
|
|
|
|
|
if __name__ == "__main__":
|
|
app.run(debug=True)
|