logologo
เริ่มต้น
คู่มือ
การพัฒนา
ปลั๊กอิน
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
เริ่มต้น
คู่มือ
การพัฒนา
ปลั๊กอิน
API
logologo
ภาพรวม

บล็อก

ภาพรวม

บล็อกข้อมูล

ตาราง
ฟอร์ม
รายละเอียด
รายการ
การ์ดแบบกริด
แผนภูมิ

บล็อกตัวกรอง

ฟอร์ม

บล็อกอื่นๆ

แผงควบคุม
Iframe
บล็อกอ้างอิง
Markdown
JS Block

การตั้งค่าบล็อก

ขอบเขตข้อมูล
เลย์เอาต์
กฎการเชื่อมโยงบล็อก
กฎการเชื่อมโยงฟิลด์
กฎการเรียงลำดับ
ลบบล็อก
ชื่อบล็อก

ฟิลด์

ภาพรวม

การกำหนดค่าทั่วไป

ฟิลด์ตาราง
ฟิลด์รายละเอียด
ฟิลด์ฟอร์มตัวกรอง
ฟิลด์ฟอร์ม

การกำหนดค่าเฉพาะ

วันที่
ตัวจัดการไฟล์
ฟอร์มย่อย
ตัวเลือกแบบดรอปดาวน์
ตัวเลือกข้อมูล
ตัวเลือกแบบเชื่อมโยง
ตารางย่อย
รายละเอียดย่อย
หัวข้อ
JS Field
JS Item
JS Column

การตั้งค่าฟิลด์

ค่าเริ่มต้น
ป้ายกำกับฟิลด์
แสดงป้ายกำกับ
คำแนะนำฟิลด์
ขอบเขตข้อมูล
คอมโพเนนต์ฟิลด์
การจัดรูปแบบตัวเลข
โหมด
จำเป็น
ฟิลด์หัวข้อ
กฎการตรวจสอบ
คอมโพเนนต์ฟิลด์ความสัมพันธ์

การดำเนินการ

ภาพรวม

การตั้งค่าการดำเนินการ

ปุ่มแก้ไข
ยืนยันซ้ำ
การกำหนดค่าฟิลด์
ผูกกับเวิร์กโฟลว์
ป๊อปอัปแก้ไข
กฎการเชื่อมโยงการดำเนินการ

ประเภทการดำเนินการ

เพิ่มใหม่
ดู
ลบ
แก้ไข
นำเข้า
นำเข้า Pro
ส่งออก
ส่งออก Pro
ส่งออกไฟล์แนบ
ตัวกรอง
ลิงก์
เปิดป๊อปอัป
รีเฟรช
ส่งข้อมูล
ทริกเกอร์เวิร์กโฟลว์
อัปเดตระเบียน
อัปเดตเป็นชุด
เพิ่มระเบียนย่อย
JS Action
สิทธิ์การดำเนินการ

ขั้นสูง

กฎการเชื่อมโยง
โฟลว์เหตุการณ์
ตัวแปร
RunJS
Previous PageJS Column
Next Pageป้ายกำกับฟิลด์
TIP

เอกสารนี้แปลโดย AI หากมีข้อมูลที่ไม่ถูกต้อง โปรดดูเวอร์ชันภาษาอังกฤษ

#ค่าเริ่มต้น

#บทนำ

ค่าเริ่มต้นคือค่าเริ่มต้นของฟิลด์เมื่อมีการสร้างเรคคอร์ดใหม่ครับ/ค่ะ คุณสามารถตั้งค่าเริ่มต้นให้กับฟิลด์ได้เมื่อตั้งค่าฟิลด์ในคอลเลกชัน หรือจะระบุค่าเริ่มต้นสำหรับฟิลด์ในบล็อกฟอร์มเพิ่มข้อมูลใหม่ก็ได้ครับ/ค่ะ โดยสามารถตั้งค่าเป็นค่าคงที่ (constant) หรือตัวแปร (variable) ก็ได้ครับ/ค่ะ

#ตั้งค่าเริ่มต้นได้ที่ไหนบ้าง

#ฟิลด์ในคอลเลกชัน

20240411095933

#ฟิลด์ในฟอร์มเพิ่มข้อมูลใหม่

ฟิลด์ส่วนใหญ่ในฟอร์มเพิ่มข้อมูลใหม่รองรับการตั้งค่าเริ่มต้นครับ/ค่ะ

20251028161801

#การเพิ่มข้อมูลในซับฟอร์ม

ข้อมูลย่อยที่เพิ่มผ่านฟิลด์ซับฟอร์ม ไม่ว่าจะเป็นในฟอร์มเพิ่มข้อมูลใหม่หรือฟอร์มแก้ไขข้อมูล ก็จะมีค่าเริ่มต้นให้ครับ/ค่ะ

เพิ่มข้อมูลใหม่ในซับฟอร์ม 20251028163455

เมื่อแก้ไขข้อมูลที่มีอยู่ ฟิลด์ที่ว่างเปล่าจะไม่ถูกเติมด้วยค่าเริ่มต้นครับ/ค่ะ เฉพาะข้อมูลที่เพิ่มเข้ามาใหม่เท่านั้นที่จะถูกเติมด้วยค่าเริ่มต้น

#ค่าเริ่มต้นสำหรับฟิลด์ความสัมพันธ์

เฉพาะความสัมพันธ์ประเภท Many-to-One (หลายต่อหนึ่ง) และ Many-to-Many (หลายต่อหลาย) เท่านั้นที่จะมีค่าเริ่มต้น เมื่อใช้คอมโพเนนต์ตัวเลือก (Select, RecordPicker) ครับ/ค่ะ

20251028164128

#ตัวแปรค่าเริ่มต้น

#มีตัวแปรอะไรบ้าง

  • ผู้ใช้ปัจจุบัน
  • เรคคอร์ดปัจจุบัน (ใช้ได้กับเรคคอร์ดที่มีอยู่แล้วเท่านั้น)
  • ฟอร์มปัจจุบัน (โดยปกติจะแสดงเฉพาะฟิลด์ในฟอร์มเท่านั้น)
  • ออบเจกต์ปัจจุบัน (แนวคิดภายในซับฟอร์ม หมายถึงออบเจกต์ข้อมูลแต่ละแถวในซับฟอร์ม)
  • พารามิเตอร์ URL สำหรับข้อมูลเพิ่มเติมเกี่ยวกับตัวแปร โปรดดูที่ ตัวแปร ครับ/ค่ะ

#ตัวแปรค่าเริ่มต้นของฟิลด์

แบ่งออกเป็นสองประเภท ได้แก่ ฟิลด์ที่ไม่ใช่ความสัมพันธ์ และฟิลด์ความสัมพันธ์ครับ/ค่ะ

#ตัวแปรค่าเริ่มต้นสำหรับฟิลด์ความสัมพันธ์

  • ออบเจกต์ตัวแปรต้องเป็นเรคคอร์ดของคอลเลกชัน
  • ต้องเป็นคอลเลกชันที่อยู่ในสายการสืบทอด ซึ่งอาจเป็นคอลเลกชันปัจจุบัน หรือคอลเลกชันแม่/ลูกก็ได้
  • ตัวแปร "เรคคอร์ดที่เลือกในตาราง" ใช้ได้เฉพาะกับฟิลด์ความสัมพันธ์แบบ "Many-to-Many (หลายต่อหลาย)" และ "One-to-Many (หนึ่งต่อหลาย)/Many-to-One (หลายต่อหนึ่ง)" เท่านั้น
  • สำหรับสถานการณ์ที่มีหลายระดับ จะต้องทำการ Flatten (ปรับให้เป็นระนาบเดียว) และ Deduplicate (ลบรายการซ้ำ) ครับ/ค่ะ
// เรคคอร์ดที่เลือกในตาราง:
[{id:1},{id:2},{id:3},{id:4}]

// เรคคอร์ดที่เลือกในตาราง/แบบ One-to-One:
[{toOne: {id:2}}, {toOne: {id:3}}, {toOne: {id:3}}]
// Flatten และ Deduplicate
[{id: 2}, {id: 3}]

// เรคคอร์ดที่เลือกในตาราง/แบบ Many-to-Many:
[{toMany: [{id: 1}, {id:2}]}, {toMany: {[id:3}, {id:4}]}]
// Flatten
[{id:1},{id:2},{id:3},{id:4}]

#ตัวแปรค่าเริ่มต้นสำหรับฟิลด์ที่ไม่ใช่ความสัมพันธ์

  • ประเภทข้อมูลต้องสอดคล้องกันหรือเข้ากันได้ เช่น สตริงเข้ากันได้กับตัวเลข และออบเจกต์ทั้งหมดที่ให้เมธอด toString
  • ฟิลด์ JSON มีความพิเศษตรงที่สามารถเก็บข้อมูลประเภทใดก็ได้ครับ/ค่ะ

#ระดับฟิลด์ (ฟิลด์เสริม)

20240411101157

  • ตัวแปรค่าเริ่มต้นสำหรับฟิลด์ที่ไม่ใช่ความสัมพันธ์

    • เมื่อเลือกฟิลด์ที่มีหลายระดับ จะจำกัดเฉพาะความสัมพันธ์แบบ One-to-One (หนึ่งต่อหนึ่ง) เท่านั้น และไม่รองรับความสัมพันธ์แบบ Many-to-Many (หลายต่อหลาย)
    • ฟิลด์ JSON มีความพิเศษและสามารถตั้งค่าได้โดยไม่มีข้อจำกัดครับ/ค่ะ
  • ตัวแปรค่าเริ่มต้นสำหรับฟิลด์ความสัมพันธ์

    • hasOne รองรับเฉพาะความสัมพันธ์แบบ One-to-One (หนึ่งต่อหนึ่ง) เท่านั้น
    • hasMany รองรับทั้งแบบ One-to-One (หนึ่งต่อหนึ่ง) (การแปลงภายใน) และ Many-to-Many (หลายต่อหลาย)
    • belongsToMany รองรับทั้งแบบ One-to-One (หนึ่งต่อหนึ่ง) (การแปลงภายใน) และ Many-to-Many (หลายต่อหลาย)
    • belongsTo โดยทั่วไปจะเป็นแบบ One-to-One (หนึ่งต่อหนึ่ง) แต่เมื่อความสัมพันธ์หลักเป็น hasMany ก็จะรองรับแบบ Many-to-Many (หลายต่อหลาย) ด้วย (เนื่องจาก hasMany/belongsTo โดยพื้นฐานแล้วคือความสัมพันธ์แบบ Many-to-Many)

#กรณีพิเศษ

#ความสัมพันธ์แบบ "Many-to-Many (หลายต่อหลาย)" เทียบเท่ากับความสัมพันธ์แบบ "One-to-Many (หนึ่งต่อหลาย)/Many-to-One (หลายต่อหนึ่ง)" ที่รวมกัน

โมเดล

20240411101558

#ทำไมความสัมพันธ์แบบ One-to-One (หนึ่งต่อหนึ่ง) และ One-to-Many (หนึ่งต่อหลาย) ถึงไม่มีค่าเริ่มต้น

ยกตัวอย่างเช่น ในความสัมพันธ์ A.B ถ้า b1 ถูกเชื่อมโยงกับ a1 แล้ว ก็จะไม่สามารถเชื่อมโยงกับ a2 ได้ครับ/ค่ะ หาก b1 ไปเชื่อมโยงกับ a2 ก็จะทำให้การเชื่อมโยงกับ a1 ถูกยกเลิกไป ในกรณีนี้ข้อมูลไม่ได้ถูกแชร์กัน ในขณะที่ค่าเริ่มต้นเป็นกลไกที่ใช้สำหรับการแชร์ (สามารถเชื่อมโยงได้ทั้งหมด) ดังนั้น ความสัมพันธ์แบบ One-to-One (หนึ่งต่อหนึ่ง) และ One-to-Many (หนึ่งต่อหลาย) จึงไม่สามารถตั้งค่าเริ่มต้นได้ครับ/ค่ะ

#ทำไมซับฟอร์มหรือซับตารางของความสัมพันธ์แบบ Many-to-One (หลายต่อหนึ่ง) และ Many-to-Many (หลายต่อหลาย) ถึงไม่มีค่าเริ่มต้น

เนื่องจากซับฟอร์มและซับตารางมุ่งเน้นไปที่การแก้ไขข้อมูลความสัมพันธ์โดยตรง (รวมถึงการเพิ่มและลบ) ในขณะที่ค่าเริ่มต้นของความสัมพันธ์เป็นกลไกการแชร์ที่สามารถเชื่อมโยงได้ทั้งหมด แต่ไม่สามารถแก้ไขข้อมูลความสัมพันธ์ได้ครับ/ค่ะ ดังนั้น สถานการณ์เช่นนี้จึงไม่เหมาะสมที่จะมีค่าเริ่มต้น

นอกจากนี้ ซับฟอร์มหรือซับตารางมีฟิลด์ย่อย ซึ่งอาจทำให้ไม่ชัดเจนว่าค่าเริ่มต้นของซับฟอร์มหรือซับตารางนั้นเป็นการตั้งค่าเริ่มต้นสำหรับแถวหรือสำหรับคอลัมน์ครับ/ค่ะ

เมื่อพิจารณาจากปัจจัยทั้งหมดแล้ว จึงเหมาะสมกว่าที่จะไม่สามารถตั้งค่าเริ่มต้นให้กับซับฟอร์มหรือซับตารางได้โดยตรง ไม่ว่าจะเป็นความสัมพันธ์ประเภทใดก็ตามครับ/ค่ะ