0Pricing
DevOps Bootcamp · บทเรียน

ฟิลเตอร์: default, join และ upper

แปลงค่าภายในเทมเพลต

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

ตัวกรองทำอะไร

filter จะแปลงค่าระหว่างทางไปยังผลลัพธ์ คุณใช้ตัวกรองด้วยเครื่องหมายไปป์ โดยอ่านจากซ้ายไปขวาเหมือนกระบวนการต่อเนื่องขนาดเล็ก 🧰

{{ name | upper }}

ตัวกรอง upper

ตัวกรอง upper จะเปลี่ยนสตริงให้เป็นตัวพิมพ์ใหญ่ทั้งหมด ส่วน lower จะทำตรงกันข้าม เหมาะสำหรับปรับข้อความให้เป็นรูปแบบเดียวกัน

{{ region | upper }}
{{ region | lower }}

ตัวกรอง default

ใช้ default เพื่อระบุค่าทางเลือกสำรองเมื่อตัวแปรไม่ได้กำหนดไว้ ทำให้การแสดงผลไม่ล้มเหลวเมื่อค่าหายไป

listen {{ http_port | default(80) }};

default สำหรับค่าว่าง

ส่ง true เป็นอาร์กิวเมนต์ตัวที่สอง เพื่อแทนที่สตริงว่างด้วย ไม่ใช่เฉพาะค่าที่ไม่ได้กำหนดเท่านั้น เป็นทางเลือกสำรองที่เข้มงวดยิ่งขึ้น

{{ user | default('admin', true) }}

ตัวกรอง join

เปลี่ยน list ให้เป็นสตริงเดียวด้วย join โดยเลือกตัวเชื่อมระหว่างรายการ เหมาะสำหรับค่าการกำหนดค่าที่คั่นด้วยจุลภาค

allowed = {{ ips | join(', ') }}

เชื่อมตัวกรอง

ต่อท่อผ่านตัวกรองหลายตัว แต่ละตัวจะส่งค่าให้ตัวถัดไป ในที่นี้ list จะถูกเชื่อมแล้วเปลี่ยนเป็นตัวพิมพ์เล็กในนิพจน์เดียว

{{ tags | join(',') | lower }}

length และการนับ

ตัวกรอง length ใช้นับรายการใน list หรือตัวอักษรในสตริง มีประโยชน์สำหรับกำหนดขนาดกลุ่มเซิร์ฟเวอร์หรือลูป

workers = {{ servers | length }}

trim และ replace

ทำความสะอาดข้อความด้วย trim เพื่อลบช่องว่างที่ขอบ หรือใช้ replace เพื่อแทนที่ส่วนหนึ่งของสตริงด้วยอีกส่วนหนึ่ง

{{ path | replace('//', '/') }}

ตัวกรองสำหรับตัวเลข

ตัวกรองตัวเลขก็มีประโยชน์เช่นกัน: int และ float ใช้แปลงชนิดข้อมูล ส่วน round ใช้จัดรูปเลขทศนิยมให้มีจำนวนตำแหน่งคงที่

{{ ('8' | int) * 1024 }}

ตัวกรองเฉพาะของ Ansible

Ansible เพิ่มตัวกรองของตนเอง เช่น to_json และ to_nice_yaml สำหรับเขียนโครงสร้างข้อมูลลงในไฟล์อย่างเป็นระเบียบ

{{ config | to_nice_yaml }}

ตัวกรองอ่านจากซ้ายไปขวา

ลำดับมีความสำคัญในการเชื่อมตัวกรอง ค่าไหลผ่าน filter แต่ละตัวตามลำดับ ดังนั้นควรวางการแปลงต่าง ๆ ตามลำดับที่ต้องการ

ตรวจสอบอย่างรวดเร็ว

ตัวแปรอาจไม่ได้กำหนดไว้ และคุณต้องการค่าทางเลือกสำรองที่ปลอดภัย ตัวกรองใดจัดการกรณีนี้

สรุปทบทวน

คุณได้รู้จักตัวกรองแล้ว: default สำหรับค่าทางเลือกสำรอง, join สำหรับ list, upper สำหรับข้อความ รวมถึง length และการเชื่อมตัวกรอง เครื่องหมายไปป์ช่วยแปลงค่าได้อย่างเป็นระเบียบ ✨

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

บทเรียน “ฟิลเตอร์: default, join และ upper” ฟรีหรือไม่

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

คุณจะเรียนรู้อะไรในบทเรียน “ฟิลเตอร์: default, join และ upper”

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

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

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

บทเรียน “ฟิลเตอร์: default, join และ upper” ใช้เวลานานแค่ไหน

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

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

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

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

  1. โมดูล template และไฟล์ .j2
  2. ตัวแปรและนิพจน์ใน Jinja2
  3. ลูปและบล็อก if ในเทมเพลต
  4. ฟิลเตอร์: default, join และ upper
← กลับไปที่ DevOps Bootcamp