เอกสารนี้แปลโดย AI หากมีข้อมูลที่ไม่ถูกต้อง โปรดดูเวอร์ชันภาษาอังกฤษ
name - ชื่อคอลเลกชันstringtitle - ชื่อเรื่องคอลเลกชันstringmigrationRules - กฎการย้ายข้อมูล (Migration Rules)MigrationRule[]inherits - การสืบทอดคอลเลกชันstring[] | stringfilterTargetKey - คีย์เป้าหมายสำหรับการกรองstring | string[]fields - การกำหนดฟิลด์FieldOptions[][]model - โมเดลที่กำหนดเองstring | ModelStatic<Model>repository - Repository ที่กำหนดเองstring | RepositoryTypeautoGenId - สร้าง ID อัตโนมัติbooleantruetimestamps - เปิดใช้งาน TimestampbooleantruecreatedAt (เวลาที่สร้าง) และ updatedAt (เวลาที่อัปเดต) หรือไม่ครับ/ค่ะcreatedAt - ฟิลด์เวลาที่สร้างboolean | stringtruecreatedAt ครับ/ค่ะupdatedAt - ฟิลด์เวลาที่อัปเดตboolean | stringtrueupdatedAt ครับ/ค่ะdeletedAt - ฟิลด์ Soft Deleteboolean | stringfalseparanoid - โหมด Soft Deletebooleanfalseunderscored - การตั้งชื่อแบบ Underscorebooleanfalseindexes - การตั้งค่า IndexModelIndexesOptions[]NocoBase รองรับฟิลด์หลายประเภทครับ/ค่ะ โดยฟิลด์ทั้งหมดจะถูกกำหนดตามประเภท FieldOptions แบบ Union Type การตั้งค่าฟิลด์จะประกอบด้วยคุณสมบัติพื้นฐาน, คุณสมบัติเฉพาะของประเภทข้อมูล, คุณสมบัติความสัมพันธ์ และคุณสมบัติสำหรับการเรนเดอร์ในส่วนหน้า (frontend) ครับ/ค่ะ
ฟิลด์ทุกประเภทจะสืบทอดมาจาก BaseFieldOptions ซึ่งให้ความสามารถในการตั้งค่าฟิลด์ทั่วไปครับ/ค่ะ:
ตัวอย่าง:
name - ชื่อฟิลด์stringhidden - ซ่อนฟิลด์booleanfalsevalidation - กฎการตรวจสอบValidationOptions<T>allowNull - อนุญาตค่าว่างbooleantrueNULL หรือไม่ครับ/ค่ะdefaultValue - ค่าเริ่มต้นanyunique - ข้อจำกัดค่าไม่ซ้ำกันboolean | stringfalseprimaryKey - Primary KeybooleanfalseautoIncrement - เพิ่มค่าอัตโนมัติbooleanfalsefield - ชื่อคอลัมน์ในฐานข้อมูลstringfield ของ Sequelize)comment - คอมเมนต์ในฐานข้อมูลstringtitle - ชื่อเรื่องสำหรับแสดงผลstringdescription - คำอธิบายฟิลด์stringinterface - คอมโพเนนต์ UIstringtype: 'string' - ฟิลด์สตริงVARCHARlength: การจำกัดความยาวสตริงtrim: กำหนดว่าจะตัดช่องว่างที่หัวและท้ายออกโดยอัตโนมัติหรือไม่ตัวอย่าง:
type: 'text' - ฟิลด์ข้อความTEXT、MEDIUMTEXT、LONGTEXTlength: ประเภทความยาวข้อความของ MySQL (tiny/medium/long)ตัวอย่าง:
type: 'integer' - ฟิลด์จำนวนเต็มINTEGERตัวอย่าง:
type: 'bigInt' - ฟิลด์จำนวนเต็มขนาดใหญ่integerBIGINTตัวอย่าง:
type: 'float' - ฟิลด์ทศนิยม (Float)FLOATprecision: ความแม่นยำ (จำนวนหลักทั้งหมด)scale: จำนวนทศนิยมตัวอย่าง:
type: 'double' - ฟิลด์ทศนิยมความแม่นยำสองเท่า (Double)floatDOUBLEprecision: ความแม่นยำ (จำนวนหลักทั้งหมด)scale: จำนวนทศนิยมตัวอย่าง:
type: 'real' - ฟิลด์จำนวนจริง (Real)REALprecision: ความแม่นยำ (จำนวนหลักทั้งหมด)scale: จำนวนทศนิยมตัวอย่าง:
type: 'decimal' - ฟิลด์ทศนิยมแม่นยำ (Decimal)DECIMALprecision: ความแม่นยำ (จำนวนหลักทั้งหมด)scale: จำนวนทศนิยมตัวอย่าง:
type: 'boolean' - ฟิลด์บูลีนBOOLEAN หรือ TINYINT(1)ตัวอย่าง:
type: 'radio' - ฟิลด์ RadioBOOLEAN หรือ TINYINT(1)ตัวอย่าง:
type: 'date' - ฟิลด์วันที่DATEtimezone: กำหนดว่าจะรวมข้อมูลเขตเวลาหรือไม่ตัวอย่าง:
type: 'time' - ฟิลด์เวลาTIMEtimezone: กำหนดว่าจะรวมข้อมูลเขตเวลาหรือไม่ตัวอย่าง:
type: 'datetimeTz' - ฟิลด์วันที่และเวลาพร้อมเขตเวลาTIMESTAMP WITH TIME ZONEtimezone: กำหนดว่าจะรวมข้อมูลเขตเวลาหรือไม่ตัวอย่าง:
type: 'datetimeNoTz' - ฟิลด์วันที่และเวลาที่ไม่มีเขตเวลาTIMESTAMP หรือ DATETIMEtimezone: กำหนดว่าจะรวมข้อมูลเขตเวลาหรือไม่ตัวอย่าง:
type: 'dateOnly' - ฟิลด์เฉพาะวันที่DATEtype: 'unixTimestamp' - ฟิลด์ Unix TimestampBIGINTepoch: เวลา Epochตัวอย่าง:
type: 'json' - ฟิลด์ JSONJSON หรือ TEXTtype: 'jsonb' - ฟิลด์ JSONBJSONB (PostgreSQL)type: 'array' - ฟิลด์อาร์เรย์JSON หรือ ARRAYdataType: ประเภทการจัดเก็บ (json/array)elementType: ประเภทขององค์ประกอบ (STRING/INTEGER/BOOLEAN/JSON)ตัวอย่าง:
type: 'set' - ฟิลด์ SetJSON หรือ ARRAYdataType: ประเภทการจัดเก็บ (json/array)elementType: ประเภทขององค์ประกอบ (STRING/INTEGER/BOOLEAN/JSON)ตัวอย่าง:
type: 'uuid' - ฟิลด์ UUIDUUID หรือ VARCHAR(36)autoFill: เติมค่าอัตโนมัติตัวอย่าง:
type: 'nanoid' - ฟิลด์ NanoidVARCHARsize: ความยาวของ IDcustomAlphabet: ชุดตัวอักษรที่กำหนดเองautoFill: เติมค่าอัตโนมัติตัวอย่าง:
type: 'uid' - ฟิลด์ UID ที่กำหนดเองVARCHARprefix: คำนำหน้าpattern: รูปแบบการตรวจสอบตัวอย่าง:
type: 'snowflakeId' - ฟิลด์ Snowflake IDBIGINTtype: 'password' - ฟิลด์รหัสผ่านVARCHARlength: ความยาวของ HashrandomBytesSize: ขนาดของ Random Bytesตัวอย่าง:
type: 'encryption' - ฟิลด์การเข้ารหัสVARCHARtype: 'virtual' - ฟิลด์เสมือนtype: 'context' - ฟิลด์ ContextdataTypedataIndex: พาธ Index ของข้อมูลdataType: ประเภทข้อมูลcreateOnly: ตั้งค่าเฉพาะตอนสร้างเท่านั้นตัวอย่าง:
type: 'belongsTo' - ความสัมพันธ์แบบ Belongs Totarget: ชื่อคอลเลกชันเป้าหมายforeignKey: ชื่อฟิลด์ Foreign KeytargetKey: ชื่อฟิลด์คีย์เป้าหมายในคอลเลกชันเป้าหมายonDelete: การดำเนินการแบบ Cascade เมื่อลบonUpdate: การดำเนินการแบบ Cascade เมื่ออัปเดตconstraints: กำหนดว่าจะเปิดใช้งานข้อจำกัด Foreign Key หรือไม่ตัวอย่าง:
type: 'hasOne' - ความสัมพันธ์แบบ Has Onetarget: ชื่อคอลเลกชันเป้าหมายforeignKey: ชื่อฟิลด์ Foreign KeysourceKey: ชื่อฟิลด์คีย์ต้นทางในคอลเลกชันต้นทางonDelete: การดำเนินการแบบ Cascade เมื่อลบonUpdate: การดำเนินการแบบ Cascade เมื่ออัปเดตconstraints: กำหนดว่าจะเปิดใช้งานข้อจำกัด Foreign Key หรือไม่ตัวอย่าง:
type: 'hasMany' - ความสัมพันธ์แบบ Has Manytarget: ชื่อคอลเลกชันเป้าหมายforeignKey: ชื่อฟิลด์ Foreign KeysourceKey: ชื่อฟิลด์คีย์ต้นทางในคอลเลกชันต้นทางsortBy: ฟิลด์สำหรับเรียงลำดับsortable: กำหนดว่าจะสามารถเรียงลำดับได้หรือไม่onDelete: การดำเนินการแบบ Cascade เมื่อลบonUpdate: การดำเนินการแบบ Cascade เมื่ออัปเดตconstraints: กำหนดว่าจะเปิดใช้งานข้อจำกัด Foreign Key หรือไม่ตัวอย่าง:
type: 'belongsToMany' - ความสัมพันธ์แบบ Many-to-Manytarget: ชื่อคอลเลกชันเป้าหมายthrough: ชื่อตารางเชื่อมโยงforeignKey: ชื่อฟิลด์ Foreign KeyotherKey: Foreign Key อีกด้านในตารางเชื่อมโยงsourceKey: ชื่อฟิลด์คีย์ต้นทางในคอลเลกชันต้นทางtargetKey: ชื่อฟิลด์คีย์เป้าหมายในคอลเลกชันเป้าหมายonDelete: การดำเนินการแบบ Cascade เมื่อลบonUpdate: การดำเนินการแบบ Cascade เมื่ออัปเดตconstraints: กำหนดว่าจะเปิดใช้งานข้อจำกัด Foreign Key หรือไม่ตัวอย่าง: