ฟิลด์และวิดเจ็ต

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

ด้วยสตูดิโอ สามารถ:

ฟิลด์ของสตูดิโอเทียบกับฟิลด์คุณสมบัติ

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

Example

การเพิ่มฟิลด์ กำหนดเวลา ไปยังมุมมองฟอร์มของงานโดยใช้สตูดิโอจะทำให้ฟิลด์นั้นมองเห็นได้ในทุกงานในฐานข้อมูลของคุณ การเพิ่มฟิลด์คุณสมบัติ คำแนะนำพิเศษ ไปยังงานจะทำให้ฟิลด์มองเห็นได้ในงานทั้งหมด*ภายในโปรเจกต์เดียวกัน* (กล่าวคือ โปรเจกต์หลัก) ในขณะที่งานของโปรเจกต์อื่นๆ จะไม่ได้รับผลกระทบ

ประเภทของฟิลด์

ฟิลด์สามารถแบ่งออกเป็นสองหมวดหมู่ใหญ่ๆ ได้

  • ฟิลด์ธรรมดา ซึ่งมีค่าพื้นฐาน เช่น ข้อความ ตัวเลข ไฟล์ เป็นต้น

  • ฟิลด์เชื่อมโยง ซึ่งใช้สำหรับเชื่อมโยงและแสดงข้อมูลจากระเบียนในโมเดลอื่น

ฟิลด์ AI

ฟิลด์ AI เป็นฟิลด์ Odoo มาตรฐานที่มีความสามารถด้าน AI เพิ่มเติม ซึ่งช่วยให้สามารถสร้างค่าโดยอัตโนมัติผ่านพรอมต์ได้

ฟิลด์ธรรมดา

Note

วิดเจ็ตที่ไม่ใช่ค่าเริ่มต้น เมื่อมีให้ใช้งาน จะแสดงเป็นจุดนำหรือหัวข้อย่อย

ข้อความ (char)

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

  • ตราสัญลักษณ์: แสดงค่าภายในรูปทรงโค้งมน คล้ายกับแท็ก ไม่สามารถแก้ไขค่าบน UI ได้ แต่สามารถตั้งค่าเริ่มต้นได้

  • คัดลอกไปยังคลิปบอร์ด: ผู้ใช้สามารถคัดลอกค่าได้โดยคลิกปุ่ม

  • อีเมล: ค่าจะกลายเป็นลิงก์ mailto ที่คลิกได้

  • รูปภาพ: แสดงรูปภาพโดยใช้ URL ค่าไม่สามารถแก้ไขด้วยตนเองได้ แต่สามารถตั้งค่าเริ่มต้นได้

    Note

    วิธีนี้ทำงานต่างจากการเลือก:ref:ฟิลด์รูปภาพ <studio/fields/simple-fields-image> โดยตรง เนื่องจากรูปภาพจะไม่ถูกจัดเก็บใน Odoo เมื่อใช้ฟิลด์ ข้อความ กับวิดเจ็ต รูปภาพ ตัวอย่างเช่น วิธีนี้อาจมีประโยชน์หากคุณต้องการประหยัดพื้นที่ดิสก์

  • โทรศัพท์: ค่าจะกลายเป็นลิงก์ tel ที่คลิกได้

    Tip

    ทำเครื่องหมาย เปิดใช้งาน SMS เพื่อเพิ่มตัวเลือกในการส่ง SMS โดยตรงจาก Odoo ถัดจากฟิลด์

  • URL: ค่าจะกลายเป็น URL ที่คลิกได้

Example

ตัวอย่างฟิลด์ข้อความที่มีวิดเจ็ตต่างกัน

ข้อความหลายบรรทัด (text)

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

  • คัดลอกไปยังคลิปบอร์ด: ผู้ใช้สามารถคัดลอกค่าได้โดยคลิกปุ่ม

Example

ตัวอย่างฟิลด์ข้อความหลายบรรทัดที่มีวิดเจ็ตต่างกัน

Integer (integer)

ฟิลด์ Integer ใช้สำหรับ:dfn:จำนวนเต็มทั้งหมด (บวก ลบ หรือศูนย์ โดยไม่มีทศนิยม)

  • Percentage Pie: แสดงค่าภายในวงกลมเปอร์เซ็นต์ โดยปกติจะใช้สำหรับค่าที่คำนวณได้ ไม่สามารถแก้ไขค่าใน UI ได้ แต่สามารถตั้งค่าเริ่มต้นได้

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

  • Handle: แสดงไอคอนแฮนเดิลสำหรับลากเพื่อจัดเรียงระเบียนด้วยตนเองใน List view

Example

ตัวอย่างฟิลด์ Integer ที่มีวิดเจ็ตต่างๆ

Decimal (float)

ฟิลด์ Decimal ใช้สำหรับ:dfn:จำนวนทศนิยมทั้งหมด (บวก ลบ หรือศูนย์ โดยมีทศนิยม)

Note

จำนวนทศนิยมจะแสดงทศนิยมสองตำแหน่งหลังจุดทศนิยมใน UI แต่จะถูกเก็บไว้ในฐานข้อมูลด้วยความแม่นยำมากกว่า

  • Monetary: คล้ายกับการใช้ Monetary field แนะนำให้ใช้ฟิลด์หลังเนื่องจากมีฟังก์ชันการทำงานมากกว่า

  • Percentage: แสดงสัญลักษณ์เปอร์เซ็นต์ % หลังค่า

  • Percentage Pie: แสดงค่าภายในวงกลมเปอร์เซ็นต์ โดยปกติจะใช้สำหรับค่าที่คำนวณได้ ไม่สามารถแก้ไขฟิลด์ด้วยตนเองได้ แต่สามารถตั้งค่าเริ่มต้นได้

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

  • Time: ค่าต้องอยู่ในรูปแบบ hh:mm โดยมีนาทีสูงสุด 59 นาที

Example

ตัวอย่างฟิลด์ Decimal ที่มีวิดเจ็ตต่างๆ

Monetary (monetary)

ฟิลด์ Monetary ใช้สำหรับค่าทางการเงินทั้งหมด

Note

เมื่อคุณเพิ่มฟิลด์ Monetary ครั้งแรก คุณจะได้รับแจ้งให้เพิ่มฟิลด์ Currency หากยังไม่มีอยู่ในโมเดล Odoo จะเสนอให้เพิ่มฟิลด์ Currency ให้คุณ เมื่อเพิ่มแล้ว ให้เพิ่มฟิลด์ Monetary อีกครั้ง

Example

ตัวอย่างฟิลด์ Monetary พร้อมกับฟิลด์ Currency

Html (html)

ฟิลด์ Html ใช้สำหรับเพิ่มข้อความที่สามารถแก้ไขได้โดยใช้ตัวแก้ไข HTML ของ Odoo

  • ข้อความหลายบรรทัด: ปิดการใช้งานตัวแก้ไข HTML ของ Odoo เพื่ออนุญาตให้แก้ไข HTML แบบดิบได้

Example

ตัวอย่างฟิลด์ Html ที่มีวิดเจ็ตต่างกัน

วันที่ (date)

ฟิลด์ วันที่ ใช้สำหรับเลือกวันที่บนปฏิทิน

  • จำนวนวันที่เหลือ: แสดงจำนวนวันที่เหลืออยู่ก่อนถึงวันที่ที่เลือก (เช่น ใน 5 วัน) โดยอิงจากวันที่ปัจจุบัน ฟิลด์นี้ควรตั้งค่าเป็น อ่านอย่างเดียว

Example

ตัวอย่างฟิลด์วันที่ที่มีวิดเจ็ตต่างกัน

วันที่และเวลา (datetime)

ฟิลด์ วันที่และเวลา ใช้สำหรับเลือกวันที่บนปฏิทินและเวลาบนนาฬิกา เวลาปัจจุบันของผู้ใช้จะถูกใช้โดยอัตโนมัติหากไม่ได้ตั้งค่าเวลา

Tip

นอกจาก:ref:คุณสมบัติทั่วไป <studio/fields/properties>`แล้ว ยังมี:ref:`คุณสมบัติเฉพาะ <studio/fields/properties-date-datetime>`สำหรับฟิลด์ :guilabel:`วันที่และเวลา ที่ตั้งค่าวิดเจ็ตเป็น วันที่และเวลา หรือ ช่วงวันที่

ช่วงวันที่ (daterange)

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

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

เพื่อเพิ่มช่วงวันที่:

  1. ระบุฟิลด์ วันที่ หรือ วันที่และเวลา ที่มีอยู่แล้วซึ่งสามารถใช้เป็นฟิลด์วันที่เริ่มต้น/สิ้นสุดพื้นฐาน หรือเพิ่มฟิลด์ใหม่ หากช่วงวันที่:

    • มีวันที่เริ่มต้นและวันที่สิ้นสุดที่บังคับ ฟิลด์นี้สามารถเป็นวันที่เริ่มต้นหรือวันที่สิ้นสุดก็ได้ ผลลัพธ์จะเหมือนกัน

    • อนุญาตให้มีวันที่เริ่มต้นหรือวันที่สิ้นสุดที่เป็นตัวเลือก ฟิลด์นี้คือวันที่เริ่มต้นหรือวันที่สิ้นสุดตามลำดับ

    Tip

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

  2. เพิ่มฟิลด์ วันที่และเวลา และตั้งค่าฟิลด์ วิดเจ็ต เป็น ช่วงวันที่

  3. ป้อน ป้ายชื่อ ที่เหมาะสม

  4. เลือกฟิลด์วันที่เริ่มต้น/สิ้นสุดพื้นฐานจากรายการดรอปดาวน์ ฟิลด์วันที่เริ่มต้น หรือ ฟิลด์วันที่สิ้นสุด ตามความเหมาะสม

  5. หากช่วงวันที่ต้องมีวันที่เริ่มต้นและวันที่สิ้นสุดเป็นข้อบังคับ ให้เปิดใช้งาน ใช้ช่วงเสมอ

  6. อัปเดต:ref:คุณสมบัติทั่วไป <studio/fields/properties>`อื่นๆ หรือ:ref:`คุณสมบัติสำหรับฟิลด์วันที่และเวลา <studio/fields/properties-date-datetime>`เฉพาะตามต้องการ จากนั้นคลิก :guilabel:`ปิด ที่มุมบนขวาของหน้าจอ

Example

ตัวอย่างฟิลด์วันที่และเวลาที่มีวิดเจ็ตต่างกัน
จำนวนวันที่เหลือ (remaining_days)

วิดเจ็ต จำนวนวันที่เหลือ แสดงจำนวนวันที่เหลืออยู่ก่อนวันที่ที่เลือก (เช่น ใน 5 วัน) โดยอิงจากวันที่และเวลาปัจจุบัน ฟิลด์นี้ควรตั้งค่าเป็น อ่านอย่างเดียว

ช่องทำเครื่องหมาย (boolean)

ฟิลด์ ช่องทำเครื่องหมาย ใช้เมื่อค่าควรเป็นจริงหรือเท็จเท่านั้น โดยระบุด้วยการทำเครื่องหมายหรือไม่ทำเครื่องหมายในช่อง

  • ปุ่ม: แสดงปุ่มตัวเลือก วิดเจ็ตทำงานโดยไม่ต้องเปลี่ยนไปยังโหมดแก้ไข

  • สลับ: แสดงปุ่มสลับ วิดเจ็ตทำงานโดยไม่ต้องเปลี่ยนไปยังโหมดแก้ไข

Example

ตัวอย่างฟิลด์ช่องทำเครื่องหมายที่มีวิดเจ็ตต่างกัน

การเลือก (selection)

ฟิลด์ การเลือก ใช้เมื่อผู้ใช้ควรเลือกค่าเดียวจากกลุ่มค่าที่กำหนดไว้ล่วงหน้า

  • ตราสัญลักษณ์: แสดงค่าภายในรูปทรงโค้งมน คล้ายกับแท็ก ไม่สามารถแก้ไขค่าบน UI ได้ แต่สามารถตั้งค่าเริ่มต้นได้

  • ตราสัญลักษณ์: แสดงค่าที่เลือกได้ทั้งหมดพร้อมกันภายในรูปทรงสี่เหลี่ยม โดยจัดเรียงตามแนวนอน

  • ความสำคัญ: แสดงสัญลักษณ์ดาวแทนค่า ซึ่งสามารถใช้เพื่อระบุระดับความสำคัญหรือความพึงพอใจ ตัวอย่างเช่น ผลที่ได้จะเหมือนกับการเลือก ฟิลด์ความสำคัญ แม้ว่าสำหรับฟิลด์หลังจะมีค่าความสำคัญสี่ค่ากำหนดไว้ล่วงหน้าแล้ว

  • ปุ่มตัวเลือก: แสดงค่าที่สามารถเลือกได้ทั้งหมดพร้อมกันเป็นปุ่มตัวเลือก

    Tip

    โดยค่าเริ่มต้น ปุ่มตัวเลือกจะจัดเรียงในแนวตั้ง เปิดใช้งาน แสดงในแนวนอน เพื่อเปลี่ยนวิธีการแสดง

  • แถบสถานะ: แสดงค่าที่สามารถเลือกได้ทั้งหมดพร้อมกันเป็นแถบความคืบหน้าแบบลูกศร

    Tip

    โดยค่าเริ่มต้น ค่าบนแถบสถานะสามารถเลือกได้ ปิดใช้งาน คลิกได้ เพื่อป้องกันไม่ให้แก้ไขค่าบนอินเทอร์เฟซผู้ใช้

Example

ตัวอย่างฟิลด์การเลือกที่มีวิดเจ็ตต่างกัน

ความสำคัญ (selection)

ฟิลด์ ความสำคัญ ใช้เพื่อแสดงระบบการให้คะแนนแบบสามดาว ซึ่งสามารถใช้เพื่อระบุระดับความสำคัญหรือความพึงพอใจ ฟิลด์ประเภทนี้เป็น:ref:ฟิลด์การเลือก <studio/fields/simple-fields-selection>`ที่มีวิดเจ็ต :guilabel:`ความสำคัญ เลือกไว้โดยค่าเริ่มต้นและมีค่าความสำคัญสี่ค่ากำหนดไว้ล่วงหน้า ดังนั้น วิดเจ็ต ป้าย, ป้ายหลายอัน, ปุ่มตัวเลือก และ การเลือก จะมีผลเหมือนกับที่อธิบายไว้ใน:ref:การเลือก <studio/fields/simple-fields-selection>

Tip

หากต้องการเปลี่ยนจำนวนดาวที่ใช้ได้โดยการเพิ่มหรือลบค่า ให้คลิก แก้ไขค่า โปรดทราบว่าค่าแรกเท่ากับ 0 ดาว (กล่าวคือ เมื่อไม่มีการเลือก) ดังนั้นการมีสี่ค่าจะส่งผลให้เป็นระบบการให้คะแนนแบบสามดาว เป็นต้น

Example

ตัวอย่างของฟิลด์ลำดับความสำคัญ

ไฟล์ (binary)

ฟิลด์ ไฟล์ ใช้สำหรับอัปโหลดไฟล์ประเภทใดก็ได้ หรือเซ็นแบบฟอร์ม (วิดเจ็ต การเซ็น)

  • รูปภาพ: ผู้ใช้สามารถอัปโหลดไฟล์รูปภาพ ซึ่งจะแสดงใน มุมมองแบบฟอร์ม ซึ่งให้ผลลัพธ์เช่นเดียวกับการใช้ ฟิลด์รูปภาพ

  • ตัวแสดง PDF: ผู้ใช้สามารถอัปโหลดไฟล์ PDF ซึ่งสามารถเรียกดูได้จาก มุมมองแบบฟอร์ม

  • การเซ็น: ผู้ใช้สามารถเซ็นแบบฟอร์มแบบอิเล็กทรอนิกส์ ซึ่งให้ผลลัพธ์เช่นเดียวกับการเลือก ฟิลด์การเซ็น

Example

ตัวอย่างของฟิลด์ไฟล์ที่มีวิดเจ็ตต่างกัน

รูปภาพ (binary)

ฟิลด์ รูปภาพ ใช้สำหรับอัปโหลดรูปภาพและแสดงใน มุมมองแบบฟอร์ม ฟิลด์ประเภทนี้คือ ฟิลด์ไฟล์ ที่มีการเลือกวิดเจ็ต รูปภาพ ไว้ตามค่าเริ่มต้น ดังนั้น วิดเจ็ต ไฟล์, ตัวแสดง PDF และ การเซ็น จะให้ผลลัพธ์เหมือนกับที่อธิบายไว้ใน ไฟล์

Tip

หากต้องการเปลี่ยนขนาดการแสดงผลของรูปภาพที่อัปโหลด ให้เลือก เล็ก, กลาง หรือ ใหญ่ ภายใต้ตัวเลือก ขนาด

การเซ็น (binary)

ฟิลด์ การเซ็น ใช้สำหรับเซ็นแบบฟอร์มแบบอิเล็กทรอนิกส์ ฟิลด์ประเภทนี้คือ ฟิลด์ไฟล์ ที่มีการเลือกวิดเจ็ต การเซ็น ไว้ตามค่าเริ่มต้น ดังนั้น วิดเจ็ต ไฟล์, รูปภาพ และ ตัวแสดง PDF จะให้ผลลัพธ์เหมือนกับที่อธิบายไว้ใน ไฟล์

Tip

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

ฟิลด์เชื่อมโยง

Note

วิดเจ็ตที่ไม่ใช่ค่าเริ่มต้น เมื่อมีให้ใช้งาน จะแสดงเป็นจุดนำหรือหัวข้อย่อย

Many2One (many2one)

ฟิลด์ Many2One ใช้สำหรับเชื่อมโยงเรกคอร์ดอื่น (จากโมเดลอื่น) ไปยังเรกคอร์ดที่กำลังแก้ไข ชื่อเรกคอร์ดจากโมเดลอื่นจะแสดงบนเรกคอร์ดที่กำลังแก้ไข

Example

ในโมเดล คำสั่งขาย ฟิลด์ ลูกค้า เป็นฟิลด์ Many2One ที่ชี้ไปยังโมเดล ผู้ติดต่อ ซึ่งทำให้สามารถเชื่อมโยงคำสั่งขาย**หลายรายการ**ไปยังผู้ติดต่อ (ลูกค้า) **รายการเดียว**ได้

แผนภาพแสดงความสัมพันธ์แบบ many2one

Tip

  • หากต้องการป้องกันไม่ให้ผู้ใช้สร้างเรกคอร์ดใหม่ในโมเดลที่เชื่อมโยง ให้ทำเครื่องหมาย ปิดใช้งานการสร้าง

  • เพื่อป้องกันไม่ให้ผู้ใช้เปิดระเบียนในหน้าต่างป๊อปอัป ให้ทำเครื่องหมาย ปิดการเปิด

  • เพื่อช่วยให้ผู้ใช้เลือกเฉพาะระเบียนที่ถูกต้อง ให้คลิก โดเมน เพื่อสร้างตัวกรอง

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

  • ตราสัญลักษณ์: แสดงค่าภายในรูปทรงโค้งมน คล้ายกับแท็ก ไม่สามารถแก้ไขค่าบน UI ได้

  • ปุ่มตัวเลือก: แสดงค่าที่สามารถเลือกได้ทั้งหมดพร้อมกันเป็นปุ่มตัวเลือก

One2Many (one2many)

ฟิลด์ One2Many ใช้เพื่อแสดงความสัมพันธ์ที่มีอยู่ระหว่างระเบียนหนึ่งในโมเดลปัจจุบันกับหลายระเบียนจากโมเดลอื่น

Example

คุณสามารถเพิ่มฟิลด์ One2Many ในโมเดล ผู้ติดต่อ เพื่อดูคำสั่งขายหลายรายการของลูกค้า**คน**หนึ่ง

แผนภาพแสดงความสัมพันธ์แบบ one2many

Note

เพื่อใช้ฟิลด์ One2Many ทั้งสองโมเดลจะต้องถูกเชื่อมโยงกันแล้วโดยใช้ ฟิลด์ Many2One ความสัมพันธ์แบบ One2Many ไม่มีอยู่เองโดยอิสระ แต่จะทำการค้นหาย้อนกลับของความสัมพันธ์ Many2One ที่มีอยู่

บรรทัด (one2many)

ฟิลด์ บรรทัด ใช้เพื่อสร้างตารางที่มีแถวและคอลัมน์ (เช่น บรรทัดของสินค้าในคำสั่งขาย)

Tip

เพื่อแก้ไขคอลัมน์ ให้คลิกที่ฟิลด์ บรรทัด จากนั้นคลิก แก้ไขมุมมองรายการ หากต้องการแก้ไขฟอร์มที่ปรากฏขึ้นเมื่อผู้ใช้คลิก เพิ่มบรรทัด ให้คลิก แก้ไขมุมมองฟอร์ม แทน

Example

ตัวอย่างฟิลด์บรรทัด

Many2Many (many2many)

ฟิลด์ Many2Many ใช้เพื่อเชื่อมโยงหลายระเบียนจากโมเดลอื่นกับหลายระเบียนในโมเดลปัจจุบัน ฟิลด์ Many2Many สามารถใช้ ปิดการสร้าง, ปิดการเปิด, โดเมน เช่นเดียวกับ ฟิลด์ Many2One

Example

ในโมเดล งาน ฟิลด์ ผู้รับมอบหมาย เป็นฟิลด์ Many2Many ที่ชี้ไปยังโมเดล ผู้ติดต่อ สิ่งนี้ทำให้ผู้ใช้คนเดียวสามารถถูกมอบหมายให้กับงาน**หลาย**งานและผู้ใช้**หลาย**คนสามารถถูกมอบหมายให้กับงานเดียวได้

แผนภาพแสดงความสัมพันธ์แบบ many2many

Tip

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

  • ช่องทำเครื่องหมาย: ผู้ใช้สามารถเลือกหลายค่าโดยใช้ช่องทำเครื่องหมาย

  • แท็ก: ผู้ใช้สามารถเลือกหลายค่าที่ปรากฏในรูปทรงกลม หรือที่เรียกว่า แท็ก ซึ่งมีผลเหมือนกับการเลือก ฟิลด์แท็ก

แท็ก (many2many)

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

Tip

เพื่อแสดงแท็กที่มีสีพื้นหลังแตกต่างกัน ให้ทำเครื่องหมาย ใช้สี

Example

ตัวอย่างของฟิลด์แท็ก

เพิ่มฟิลด์ไปยังมุมมอง

ด้วยสตูดิโอ สามารถเพิ่มได้

  • ฟิลด์ใหม่ ไปยัง:ref:ฟอร์ม <studio/views/general/form> หรือ:ref:มุมมองรายการ <studio/views/multiple-records/list> ของโมเดล

  • ฟิลด์ที่มีอยู่ กล่าวคือ ฟิลด์ที่มีอยู่แล้วใน:doc:โมเดล <models_modules_apps> ที่เป็นปัญหา ไปยัง*ทุก*มุมมองของโมเดลนั้น

Tip

เพิ่มฟิลด์ใหม่ไปยังมุมมองฟอร์มหรือมุมมองรายการเพื่อบันทึกไปยังโมเดลและทำให้พร้อมใช้งานเป็นฟิลด์ที่มีอยู่ในมุมมองอื่นๆ ของโมเดลเดียวกัน

เพิ่มฟิลด์ใหม่

Tip

เปิดใช้งาน:ref:โหมดนักพัฒนา <developer-mode> ก่อน เพิ่มฟิลด์ใหม่เพื่อดูและแก้ไขชื่อทางเทคนิคของฟิลด์ได้ระหว่างการกำหนดค่า

ทำตามขั้นตอนเหล่านี้เพื่อเพิ่มฟิลด์ใหม่:

  1. ไปที่แบบฟอร์มหรือมุมมองรายการที่เกี่ยวข้อง จากนั้นคลิกไอคอน (สลับสตูดิโอ) ที่มุมบนขวา หรือเมื่อเปิดแอปใดก็ได้ ให้คลิกไอคอน (สลับสตูดิโอ) จากนั้นไปที่แบบฟอร์มหรือมุมมองรายการที่เกี่ยวข้อง

  2. ในแท็บ เพิ่ม ลาก:ref:ประเภทฟิลด์ <studio/fields/field-types>`ที่เกี่ยวข้องจากส่วน :guilabel:`ฟิลด์ใหม่ และวางในตำแหน่งที่ต้องการ หากฟิลด์ใหม่เป็น:ref:ฟิลด์เชื่อมโยง <studio/fields/relational-fields> ให้เลือกฟิลด์ตอบกลับ โมเดล หรือฟิลด์ที่เกี่ยวข้องในหน้าต่างป๊อปอัป

  3. ในแท็บ คุณสมบัติ กำหนดค่า:ref:`คุณสมบัติ <studio/fields/properties>`ของฟิลด์:

    • ป้อน:guilabel:`ป้ายชื่อ`ที่จะแสดงเป็นชื่อฟิลด์บน UI ซึ่งจะใช้ในการสร้างชื่อทางเทคนิคเริ่มต้นของฟิลด์ด้วย

    • คลิกที่ใดก็ได้นอกฟิลด์ ป้ายชื่อ เพื่อดู:guilabel:`ชื่อทางเทคนิค`ที่อัปเดตด้วยชื่อทางเทคนิคเริ่มต้น

      Note

      • ชื่อทางเทคนิค`ของฟิลด์ใหม่สามารถแก้ไखในสตูดิโอได้ระหว่างกระบวนการกำหนดค่า ในเวลาอื่นๆ ชื่อทางเทคนิคของฟิลด์สามารถ:ref:`แก้ไขได้ผ่านการตั้งค่าทางเทคนิคของฐานข้อมูลเท่านั้น <studio/fields/properties-technical-name-change>

      • ชื่อทางเทคนิคของฟิลด์ใหม่ที่เพิ่มโดยใช้สตูดิโอจะมีคำนำหน้าเป็น x_studio_ ตามค่าเริ่มต้น

    • เลือก:guilabel:`วิดเจ็ต`อื่นผ่านเมนูแบบเลื่อนลงได้หากต้องการ โดยวิดเจ็ตเริ่มต้นสำหรับ:ref:`ประเภทฟิลด์ <studio/fields/field-types>`จะถูกเลือกไว้โดยค่าเริ่มต้น

    • กำหนดค่า:ref:`คุณสมบัติฟิลด์ <studio/fields/properties>`อื่นๆ ได้หากต้องการ

  4. คลิก ปิด ที่มุมบนขวาเพื่อปิดสตูดิโอ

ดูเพิ่มเติม

เพิ่มฟิลด์ AI ใหม่

เพิ่มฟิลด์ที่มีอยู่แล้ว

ทำตามขั้นตอนเหล่านี้เพื่อเพิ่มฟิลด์ที่มีอยู่ในโมเดลแต่ไม่ปรากฏในมุมมองปัจจุบัน:

  1. ไปที่มุมมองที่เกี่ยวข้อง จากนั้นคลิกไอคอน (สลับสตูดิโอ) ที่มุมบนขวา หรือเมื่อเปิดแอปใดก็ได้ ให้คลิกไอคอน (สลับสตูดิโอ) จากนั้นไปที่มุมมองที่เกี่ยวข้อง

  2. ในแท็บ เพิ่ม ในแผงด้านซ้าย คลิก ฟิลด์ที่มีอยู่ เพื่อแสดงรายการฟิลด์ทั้งหมดของโมเดลที่ไม่ปรากฏในมุมมองปัจจุบัน

  3. ลากฟิลด์ที่เกี่ยวข้องและวางในตำแหน่งที่ต้องการ

  4. ในแท็บ คุณสมบัติ กำหนดค่า:ref:`คุณสมบัติ <studio/fields/properties>`ที่เกี่ยวข้องสำหรับฟิลด์ในมุมมองปัจจุบัน

    Note

    คุณสมบัติต่างๆ สามารถกำหนดค่าแยกกันสำหรับมุมมองต่างๆ ได้หากต้องการ เช่น ป้ายชื่อ วิดเจ็ต การมองเห็นฟิลด์สำหรับกลุ่มผู้ใช้บางกลุ่ม รวมถึงว่าฟิลด์นั้น:guilabel:ซ่อน บังคับ หรือ:guilabel:`อ่านอย่างเดียว`หรือไม่

  5. คลิก ปิด ที่มุมบนขวาเพื่อปิดสตูดิโอ

คุณสมบัติของฟิลด์

:ref:`คุณสมบัติทั่วไป <studio/fields/properties-general>`หลายรายการสามารถกำหนดค่าได้สำหรับ:ref:`ประเภทฟิลด์และวิดเจ็ต <studio/fields/field-types>`ส่วนใหญ่ คุณสมบัติเพิ่มเติมจะพร้อมใช้งานขึ้นอยู่กับประเภทฟิลด์และวิดเจ็ตเฉพาะที่เลือก ตัวอย่างเช่น ฟิลด์:guilabel:`วันที่ & เวลา`ที่ใช้วิดเจ็ต:guilabel:`วันที่ & เวลา`หรือ:guilabel:`ช่วงวันที่`มี:ref:`คุณสมบัติเฉพาะ <studio/fields/properties-date-datetime>`ต่างๆ ที่สามารถกำหนดค่าได้

คุณสมบัติทั่วไป

  • คลาส: ใช้ Bootstrap หรือคลาสที่กำหนดเองอื่นๆ ที่กำหนดใน Odoo เพื่อปรับแต่งรูปแบบและการแสดงผลของฟิลด์บน UI

  • ซ่อน: เปิดใช้งานคุณสมบัตินี้เมื่อไม่จำเป็นต้องให้ผู้ใช้เห็นฟิลด์ในอินเทอร์เฟซผู้ใช้ ช่วยลดความยุ่งเหยิงในอินเทอร์เฟซโดยแสดงเฉพาะฟิลด์ที่จำเป็นตามสถานการณ์เฉพาะ

  • จำเป็น: เปิดใช้งานคุณสมบัตินี้หากฟิลด์ควรได้รับการกรอกข้อมูลจากผู้ใช้เสมอก่อนที่จะดำเนินการต่อได้

  • อ่านอย่างเดียว: เปิดใช้งานคุณสมบัตินี้หากผู้ใช้ไม่สามารถแก้ไขฟิลด์ได้

Tip

  • คุณสมบัติ:guilabel:ซ่อน`ใช้ได้ในสตูดิโอด้วย หากต้องการดูฟิลด์ที่ซ่อนอยู่ในสตูดิโอ ให้คลิกที่แท็บ:guilabel:`มุมมอง`ของมุมมองและเปิดใช้งาน:guilabel:`แสดงองค์ประกอบที่ซ่อนอยู่

  • คุณสมบัติ:guilabel:ซ่อน จำเป็น และ:guilabel:`อ่านอย่างเดียว`สามารถเปิดใช้งานสำหรับเร็กคอร์ดเฉพาะได้โดยคลิก:guilabel:`แบบมีเงื่อนไข`และสร้างตัวกรอง

    Example

    ในมุมมองฟอร์มของโมเดล ผู้ติดต่อ ฟิลด์:guilabel:คำนำหน้า`จะปรากฏเฉพาะเมื่อเลือก:guilabel:`บุคคล`เท่านั้น เนื่องจากฟิลด์นั้นจะไม่เป็นประโยชน์สำหรับผู้ติดต่อที่เป็น:guilabel:`บริษัท

  • ป้ายกำกับ: นี่คือชื่อฟิลด์บน UI ป้ายกำกับจะใช้ในการสร้างชื่อทางเทคนิคของฟิลด์

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

  • ชื่อทางเทคนิค: หากต้องการดูชื่อทางเทคนิคของฟิลด์ในสตูดิโอ (และแก้ไขได้หากต้องการในระหว่างการกำหนดค่าฟิลด์ใหม่) ให้เปิดใช้งาน:ref:โหมดนักพัฒนา <developer-mode>

    Tip

    หากฟิลด์นี้จำเป็นต้องอัปเดตแต่ไม่สามารถแก้ไขได้อีกต่อไปผ่านสตูดิโอ ชื่อทางเทคนิคสามารถ:ref:แก้ไขได้ผ่านการตั้งค่าทางเทคนิคของฐานข้อมูล <studio/fields/properties-technical-name-change>

  • วิดเจ็ต: เพื่อเปลี่ยนรูปลักษณ์หรือฟังก์ชันการทำงานเริ่มต้นของฟิลด์ ให้เลือกวิดเจ็ตที่มีให้ใช้งาน

  • ข้อความตัวอย่าง: เพื่อแสดงตัวอย่างวิธีกรอกฟิลด์ ให้เพิ่มข้อความตัวอย่างแบบคงที่ ข้อความจะปรากฏเป็นสีเทาอ่อนจนกว่าจะมีการป้อนค่า

  • ข้อความตัวอย่างแบบไดนามิก: เพื่อแสดงค่าของฟิลด์ที่เลือกเป็นตัวอย่างวิธีกรอกฟิลด์ ข้อความจะปรากฏเป็นสีเทาอ่อนจนกว่าจะมีการป้อนค่า

  • ค่าเริ่มต้น: เพื่อแสดงค่าเริ่มต้นในฟิลด์เมื่อสร้างรายการ ให้เพิ่มค่า

  • อนุญาตการมองเห็นให้กับกลุ่ม: เพื่อจำกัดว่าผู้ใช้คนใดสามารถดูฟิลด์ได้ ให้เลือกหนึ่ง:ref:`กลุ่ม <access-rights/groups>`การเข้าถึงของผู้ใช้หรือมากกว่า

  • ห้ามการมองเห็นให้กับกลุ่ม: เพื่อป้องกันไม่ให้ผู้ใช้บางคนเห็นฟิลด์ ให้เลือกหนึ่ง:ref:`กลุ่ม <access-rights/groups>`การเข้าถึงของผู้ใช้หรือมากกว่า

คุณสมบัติสำหรับฟิลด์วันที่และเวลา

สำหรับฟิลด์:guilabel:วันที่ & เวลา`ที่ใช้วิดเจ็ต:guilabel:`วันที่ & เวลา`หรือ:guilabel:`ช่วงวันที่ มีคุณสมบัติเฉพาะบางอย่างที่พร้อมใช้งาน:

  • ความละเอียดต่ำสุด: กำหนดหน่วยวันที่ที่เล็กที่สุดที่ต้องเลือกในตัวเลือกวันที่ ค่าที่เป็นไปได้คือ วัน เดือน ปี หรือ ทศวรรษ หากไม่ได้เลือกค่า ผู้ใช้จะต้องเลือกวันในตัวเลือกวันที่

  • ความละเอียดสูงสุด: กำหนดหน่วยวันที่ที่ใหญ่ที่สุดที่สามารถใช้เพื่อนำทางตัวเลือกวันที่ ค่าที่เป็นไปได้คือ วัน เดือน ปี หรือ ทศวรรษ หากไม่ได้เลือกค่า ผู้ใช้สามารถนำทางตัวเลือกวันที่ได้ทีละทศวรรษ

  • คำเตือนสำหรับวันที่ในอนาคต: เปิดใช้งานคุณสมบัตินี้เพื่อแสดงไอคอนคำเตือนหากเลือกวันที่ในอนาคต

  • รูปแบบวันที่: โดยค่าเริ่มต้น วันที่จะแสดงเป็น Apr 2, 2025, 08:05 AM เปิดใช้งานคุณสมบัตินี้เพื่อแสดงวันที่ในรูปแบบ 4/2/2025 08:05:00 โหมดตัวเลขคือรูปแบบที่ตั้งไว้ในภาษาปัจจุบัน ในโหมดนี้วินาทีจะแสดงเสมอ

  • แสดงวันที่: คุณสมบัตินี้เปิดใช้งานโดยค่าเริ่มต้นสำหรับฟิลด์ วันที่และเวลา ปิดใช้งานคุณสมบัตินี้เพื่อแสดงเฉพาะเวลา

  • แสดงเวลา: คุณสมบัตินี้เปิดใช้งานโดยค่าเริ่มต้นสำหรับฟิลด์ วันที่และเวลา ในฟิลด์แบบอ่านอย่างเดียว ให้ปิดใช้งานคุณสมบัตินี้เพื่อแสดงเฉพาะวันที่ ตัวอย่างเช่น สิ่งนี้สามารถช่วยให้มุมมองรายการดูเรียบร้อยขึ้น

  • แสดงวินาที: คุณสมบัตินี้ปิดใช้งานโดยค่าเริ่มต้นสำหรับฟิลด์ วันที่และเวลา เปิดใช้งานคุณสมบัตินี้เพื่อแสดงวินาที

  • ช่วงเวลา: ป้อนค่าเพื่อกำหนดช่วงนาทีที่แสดงในตัวเลือกเวลา ตัวอย่างเช่น ป้อน 15 เพื่อให้มีช่วงเวลาทุก 15 นาที ค่าเริ่มต้นถูกตั้งไว้ที่ 5 นาที

  • วันที่ที่ยอมรับได้เร็วที่สุด: ป้อนวันที่เร็วที่สุดที่สามารถเลือกได้ในตัวเลือกวันที่ในรูปแบบ ISO คือ YYYY-MM-DD หากวันที่ปัจจุบันเป็นวันที่ที่ยอมรับได้เร็วที่สุดเสมอ ให้ป้อน today ในตัวเลือกวันที่ วันที่ก่อนหน้าวันที่ที่ยอมรับได้เร็วที่สุดจะแสดงเป็นสีเทา

  • วันที่ที่ยอมรับได้ล่าสุด: ป้อนวันที่ล่าสุดที่สามารถเลือกได้ในตัวเลือกวันที่ในรูปแบบ ISO คือ YYYY-MM-DD หากวันที่ปัจจุบันเป็นวันที่ที่ยอมรับได้ล่าสุดเสมอ ให้ป้อน today ในตัวเลือกวันที่ วันที่หลังจากวันที่ที่ยอมรับได้ล่าสุดจะแสดงเป็นสีเทา

แก้ไขคุณสมบัติของฟิลด์

หากต้องการแก้ไขคุณสมบัติของฟิลด์ ให้ทำตามขั้นตอนเหล่านี้:

  1. ไปที่มุมมองที่เกี่ยวข้อง จากนั้นคลิกไอคอน (สลับสตูดิโอ) ที่มุมบนขวา หรือเมื่อเปิดแอปใดก็ได้ ให้คลิกไอคอน (สลับสตูดิโอ) จากนั้นไปที่มุมมองที่เกี่ยวข้อง

  2. คลิกที่ฟิลด์ที่เกี่ยวข้อง

  3. ในแท็บ คุณสมบัติ ให้ทำการเปลี่ยนแปลงที่ต้องการกับ:ref:คุณสมบัติของฟิลด์ <studio/fields/properties>

    Tip

    คุณสมบัติต่างๆ สามารถกำหนดค่าแยกกันสำหรับมุมมองต่างๆ เช่น ป้ายกำกับ วิดเจ็ต การมองเห็นฟิลด์สำหรับกลุ่มผู้ใช้บางกลุ่ม รวมถึงว่าฟิลด์นั้นเป็น:guilabel:ซ่อน จำเป็น หรือ:guilabel:`อ่านอย่างเดียว`หรือไม่

  4. คลิก ปิด ที่มุมบนขวาเพื่อปิดสตูดิโอ

Note

ชื่อทางเทคนิค`ของฟิลด์ (มองเห็นได้ในสตูดิโอเมื่อเปิดใช้งาน:ref:`โหมดนักพัฒนา <developer-mode>) ไม่สามารถแก้ไخในสตูดิโอได้ สามารถทำได้:ref:ผ่านการตั้งค่าทางเทคนิคของฐานข้อมูล <studio/fields/properties-technical-name-change>

แก้ไขชื่อทางเทคนิคของฟิลด์

ในการแก้ไขชื่อทางเทคนิคของฟิลด์ ให้เปิดใช้งาน:ref:โหมดนักพัฒนา <developer-mode> จากนั้นทำตามขั้นตอนเหล่านี้:

  1. เมื่อเปิดฟิลด์ในสตูดิโอ ให้คัดลอกชื่อทางเทคนิคของฟิลด์

  2. :ref:`ลบฟิลด์ <studio/fields/remove>`ออกจากมุมมอง*ทั้งหมด*ในสตูดิโอ จากนั้นคลิก:guilabel:`ปิด`เพื่อปิดสตูดิโอ

  3. ไปที่:menuselection:แอปการตั้งค่า --> ทางเทคนิค --> ฟิลด์

  4. วางชื่อทางเทคนิคที่คัดลอกไว้ลงในแถบค้นหา จากนั้นเปิดฟิลด์ที่เกี่ยวข้อง

  5. แก้ไข:guilabel:`ชื่อฟิลด์`ตามต้องการ

เมื่ออัปเดตชื่อทางเทคนิคของฟิลด์แล้ว ฟิลด์จะสามารถ:ref:`เพิ่ม(กลับ)ไปยังมุมมองที่เกี่ยวข้อง <studio/fields/add-existing>`ได้จากรายการฟิลด์ที่มีอยู่

Important

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

ลบฟิลด์ออกจากมุมมอง

ในการลบฟิลด์ออกจากมุมมอง ให้ทำตามขั้นตอนเหล่านี้:

  1. ไปที่มุมมองที่เกี่ยวข้อง จากนั้นคลิกไอคอน (สลับสตูดิโอ) ที่มุมบนขวา หรือเมื่อเปิดแอปใดก็ได้ ให้คลิกไอคอน (สลับสตูดิโอ) จากนั้นไปที่มุมมองที่เกี่ยวข้อง

  2. คลิกที่ฟิลด์ที่เกี่ยวข้อง

  3. เลื่อนลงไปที่ด้านล่างของแท็บ:guilabel:คุณสมบัติ จากนั้นคลิก:guilabel:ลบออกจากมุมมอง

  4. คลิก:guilabel:`ตกลง`เพื่อยืนยันการดำเนินการ

Tip

  • ฟิลด์ที่ถูกลบสามารถ:ref:`เพิ่มกลับไปยังมุมมอง <studio/fields/add-existing>`ได้อย่างง่ายดายในภายหลังหากจำเป็น

  • หากต้องการทำให้มุมมองเรียบง่ายขึ้น ยังสามารถ:ref:`แก้ไขฟิลด์ <studio/fields/modify>`และทำให้:guilabel:`ซ่อน`ในมุมมองที่เป็นปัญหาได้