در قدم اول میخواهیم پروژه Flask را پیکربندی کنیم و یک مسیر ساده برای نمایش دادهها بسازیم. در این مرحله هنوز از دیتابیس استفاده نمیکنیم و دادههای اولیه را به صورت یک dict ساده تعریف میکنیم تا با آنها کار کنیم.
ساختار پوشه پروژه
- todo_app/
- app.py — فایل اصلی اپلیکیشن
- templates/ — پوشه برای فایلهای HTML
کد اولیه Flask با دادههای اولیه
from flask import Flask, render_template
app = Flask(__name__)
# دادههای اولیه بدون دیتابیس
todos = [
{"id": 1, "task": "Learn Flask basics", "done": False},
{"id": 2, "task": "Write first Flask app", "done": False},
{"id": 3, "task": "Understand Jinja templates", "done": False}
]
# مسیر اصلی برای نمایش todo ها
@app.route("/")
def index():
return render_template("index.html", todos=todos)
if __name__ == "__main__":
app.run(debug=True)
نمونه فایل HTML ساده
<!DOCTYPE html>
<html lang="fa">
<head>
<meta charset="UTF-8">
<title>Todo List</title>
</head>
<body>
<h1>Todo List</h1>
<ul>
{% for todo in todos %}
<li>{{ todo.id }} - {{ todo.task }} - {{ "Done" if todo.done else "Pending" }}</li>
{% endfor %}
</ul>
</body>
</html>
با اجرای این کد، میتوانید در مرورگر لیست اولیه Todoها را مشاهده کنید و آماده هستید که قدم بعدی یعنی ایجاد و اضافه کردن آیتم جدید را شروع کنیم.