EN: Read in English
Dunia D0: Mula Di Sini
YAML bahagian 2: bersarang dan perangkap
Anda akan belajar: cara ruang letak baris YAML di dalam satu sama lain, dan cara elak tab, sifar yang hilang dan nilai true yang licik.
Teks BM belum disemak oleh penutur asli.
Disemak dengan Docker Engine 29 pada 31 Okt 2026
Masalahnya
Satu tab yang tak nampak rosakkan seluruh fail. Itulah mesej sebenar. Dalam bahasa mudah: baris 3 mula dengan tab, dan YAML hanya terima ruang.
Tengok
Mangkuk tingkat susun mangkuk dalam satu bekas. YAML susun dengan ruang. Dua ruang lagi bermaksud “di dalam baris atasnya”. Inilah nesting (bersarang) (nesting): Kotak di dalam kotak. Dalam YAML, dua ruang lagi letak baris itu di dalam baris atasnya. (bersarang).
Tukar chicken curry kepada rendang. Tengok di mana ia tinggal dalam kotak.
Cara komputer membacanya
- tiffinmap · 3 kunci
- topriceteks
- middlechicken curryteks
- bottomsenarai · 2 item
- item 1eggteks
- item 2cucumberteks
Teka
Baris bottom: dan senarainya beralih 2 ruang ke kiri. Kini bottom: sebaris dengan tiffin:. Ia ke mana?
Pilih satu jawapan.
Cuba
Baris 3 kurang satu ruang. Baca kotak itu: kata-kata sebenar pembaca YAML, kemudian bahasa mudah. Luruskan ia. Di telefon, guna “Tambah satu ruang”.
Letak middle kembali di dalam tiffin.
Cara komputer membacanya
yaml: line 2: did not find expected key
Dalam bahasa mudah: Baris 3 tak sebaris. Samakan dengan kunci di sebelahnya.
Tengok
Kebanyakan bug YAML datang daripada beberapa perangkap licik. Okey, atau perangkap? Susun semuanya.
Seret kad ke dalam kotak. Atau ketik kad, kemudian ketik kotak.
Cuba
Tengok kotak itu: pembaca nampak nombor, 123456789. Sifar pertama hilang! Nombor telefon ialah teks. Tanda petik kekalkan sifar itu.
Jadikan nombor telefon itu teks semula.
Cara komputer membacanya
- nameKedai Kancilteks
- phone123456789nombor
- opentruetrue/false
Semak
spicy: yes. Kubernetes baca itu sebagai true. Macam mana nak kekalkan perkataan yes?
Pilih satu jawapan.
Anda berjaya!
Kini anda boleh susun YAML bersarang dengan ruang dan elak perangkap liciknya.
Nak tahu lebih (pilihan)
Alatan berbeza guna pembaca YAML berbeza. Pembaca lama (YAML 1.1) tukar yes, no, on dan off jadi true atau false. Pembaca baru kekalkannya sebagai perkataan. Tanda petik selamat di mana-mana.
Latihan sebenar (pilihan): dalam editor kod anda, hidupkan “show whitespace”. Tab dan ruang nampak berbeza. Buka satu fail YAML dan semak.
English
One invisible tab broke a whole file. That is the real message. In plain words: line 3 starts with a tab, and YAML allows only spaces.
A tiffin carrier stacks bowls inside one carrier. YAML stacks with spaces. Two more spaces mean “inside the line above”. This is nesting.
The bottom: line and its list move 2 spaces left. Now bottom: lines up with tiffin:. Where does it end up?
Line 3 is one space short. Read the box: the reader’s real words, then plain words. Line it up. On a phone, use “Add a space”.
Most YAML bugs come from a few sneaky traps. Fine, or a trap? Sort them.
Look at the box: the reader sees a number, 123456789. The first 0 is gone! Phone numbers are text. Quotes keep the 0.
spicy: yes. Kubernetes reads that as true. How do you keep the word yes?
You can now nest YAML with spaces and dodge its sneaky traps.
Anda dah siapkan ini. Latihan lagi pun bagus!
Dokumentasi rasmi: YAML 1.2 spec · Compose file reference · Kubernetes objects in YAML
Anda dah belajar 25 minit. Rehat sekejap bantu otak anda.
Pecutan selesai! Fokus yang hebat. Regangkan badan seminit?