0Pricing
Flask Academy · บทเรียน

ลูปและเงื่อนไขของ Jinja2

เรนเดอร์รายการและแยกมาร์กอัปตามเงื่อนไขในเทมเพลต

ลูปและเงื่อนไขของ Jinja2 เป็นบทเรียน Flask Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Flask Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Flask Academy มีบทเรียนทั้งหมด 4 บทเรียน

บางส่วนของบทเรียนนี้ยังไม่ได้รับการแปล และแสดงเป็นภาษาอังกฤษ

Markup That Reacts

Sometimes you must repeat rows or hide a section. Jinja2 adds logic tags so your template can loop and branch over data.

The Statement Delimiter

Logic uses {% %}, not double braces. Braces output a value, while percent tags run control flow like loops and conditions.

A Basic for Loop

Repeat markup with a for loop. Each pass binds the current item so you can print it inside the loop body.

{% for item in items %}
  <li>{{ item }}</li>
{% endfor %}

Loops Must Close

Every block opens and closes. A for loop ends with endfor, which tells Jinja2 exactly where the repeated section stops.

The loop Variable

Inside a loop, Jinja2 gives you a special loop object. Use loop.index for a 1-based counter on each pass.

{% for u in users %}
  {{ loop.index }}. {{ u }}
{% endfor %}

Handling Empty Lists

A for block can include an else branch. It runs only when the list is empty, perfect for a no items message.

{% for t in todos %}{{ t }}{% else %}None yet{% endfor %}

An if Condition

Show markup only when a test passes using if. It ends with endif and accepts ordinary Python-style comparisons.

{% if user %}
  <p>Welcome back</p>
{% endif %}

Adding else

Pair an if with else to handle the other case. One branch renders when true, the other when the test is false.

{% if user %}Hi{% else %}Please log in{% endif %}

Multiple Branches with elif

Chain extra cases with elif. Jinja2 checks each in order and renders the first branch whose test is true.

{% if n > 0 %}+{% elif n < 0 %}-{% else %}0{% endif %}

Combining Loops and Ifs

Nest an if inside a loop to filter as you go. This lets each item decide whether it appears in the output.

{% for p in posts %}{% if p.live %}{{ p.title }}{% endif %}{% endfor %}

Keep Templates Readable

Light logic in templates is fine, but deep nesting hurts. Prepare filtered data in your view to keep markup clean.

Quick Check

Which delimiter does Jinja2 use for control flow like loops and conditionals?

Recap

You can now loop with for, branch with if and elif, use the loop counter, and handle empty lists, all inside templates. Well done! ✨

คำถามที่พบบ่อย

บทเรียน “ลูปและเงื่อนไขของ Jinja2” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ลูปและเงื่อนไขของ Jinja2” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Flask Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Flask Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ลูปและเงื่อนไขของ Jinja2”

เรนเดอร์รายการและแยกมาร์กอัปตามเงื่อนไขในเทมเพลต คุณปฏิบัติ Flask Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Flask Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Flask Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 3 จากทั้งหมด 4 บทเรียน

บทเรียน “ลูปและเงื่อนไขของ Jinja2” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Flask Academy นี้ได้ไหม

ได้ บทเรียน Flask Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. render_template และโฟลเดอร์ templates
  2. ส่งข้อมูลเข้าเทมเพลต
  3. ลูปและเงื่อนไขของ Jinja2
  4. การหลีกอักขระอัตโนมัติและตัวกรอง safe
← กลับไปที่ Flask Academy