การออกแบบฐานข้อมูลสำหรับแอ็พพลิเคชันมักไม่ค่อยสมบูรณ์หากไม่มีการสร้างความสัมพันธ์ระหว่างตาราง ตัวแก้ไขฐานข้อมูล AppMaster ช่วยให้คุณสร้างความสัมพันธ์ดังกล่าวได้ในการย้ายเพียงครั้งเดียว คุณเพียงแค่ต้องวาดเส้นเชื่อมโยงระหว่างตาราง จากนั้นเลือกประเภทของความสัมพันธ์ (แบบหนึ่งต่อหนึ่ง หนึ่งต่อกลุ่ม หลายต่อกลุ่ม) และถ้าจำเป็น ชื่อของเขตข้อมูล แต่ถ้าตารางต้องอ้างถึงตัวเองล่ะ?
ลองวิเคราะห์สถานการณ์เมื่อจำเป็นต้องรักษาบันทึกบางอย่าง ในขณะเดียวกันก็มีการจัดระเบียบในลักษณะที่สร้างบันทึกอย่างเคร่งครัดในห่วงโซ่ แต่ละรายการต้องเชื่อมโยงกับรายการก่อนหน้าและรายการถัดไป (ยกเว้นรายการแรกและรายการสุดท้าย) ดังนั้นจึงสามารถติดตามห่วงโซ่ทั้งหมดสำหรับบันทึกแต่ละรายการ และระบบจะได้รับการป้องกันเพิ่มเติมจากการเปลี่ยนแปลงที่ไม่ได้รับอนุญาต
การออกแบบฐานข้อมูล
ขั้นแรก เราต้องสร้างแบบจำลองในตัวออกแบบฐานข้อมูล ตั้งชื่อมันว่า Journal และเพิ่มช่องข้อความหนึ่งช่อง record
ขั้นตอนต่อไปคือการสร้างการเชื่อมต่อ ในการทำเช่นนี้ ให้คลิกขวาที่ใดก็ได้บนผืนผ้าใบแล้วเลือก Create relation
ขั้นตอนต่อไปคือการตั้งค่าการเชื่อมต่อ ในการดำเนินการนี้ คุณต้องเลือกรุ่นเดียวกันกับ Source และ Target (ในกรณีนี้คือ Journal ) ตั้งชื่อฟิลด์ ( next และ Previous ) และประเภท previous เชื่อมต่อ ( has_one )
การตั้งค่าตารางอ้างอิงตนเองเสร็จสมบูรณ์ คุณสามารถเริ่มสร้างการออกแบบส่วนหน้าและกระบวนการทางธุรกิจได้
การสร้างกระบวนการทางธุรกิจ
มาสร้างกระบวนการทางธุรกิจส่วนหลังเพื่อเพิ่มรายการใหม่ในสมุดรายวัน จะได้รับข้อความของรายการใหม่เป็นพารามิเตอร์อินพุต การดำเนินการนี้จะค้นหาฐานข้อมูลสำหรับรายการล่าสุดเพื่อเชื่อมโยงกับรายการใหม่ สำหรับการค้นหา คุณสามารถตั้งค่า _Limit = 1 (เพราะต้องการบันทึกสุดท้ายเพียงรายการเดียว) ซึ่งเพียงพอ เนื่องจากตามค่าเริ่มต้น ระเบียนจะเรียงลำดับตาม ID และออกตามลำดับที่เพิ่มลงในฐานข้อมูล โดยเริ่มจาก บันทึกล่าสุด
ผลลัพธ์ของการค้นหาจะเป็นอาร์เรย์ที่ประกอบด้วยหนึ่งองค์ประกอบ เราจำเป็นต้องแตกไฟล์โดยใช้บล็อก Array Element ที่มี index 0 และสร้างรายการบันทึกใหม่ ( Make Journal ) ขั้นตอนสุดท้ายคือเขียนลงในฐานข้อมูล ( DB: Create Journal ) และดำเนินการตามกระบวนการทางธุรกิจให้เสร็จสิ้น
กระบวนการทางธุรกิจนี้สามารถใช้สำหรับปลายทางเริ่มต้นเพื่อสร้างบันทึกฐานข้อมูลใหม่
การออกแบบส่วนหน้า
สำหรับส่วนหน้าของเว็บแอปพลิเคชัน การเพิ่มองค์ประกอบสามรายการในหน้าก็เพียงพอแล้ว
- ช่องข้อความสำหรับป้อนเนื้อหาของรายการใหม่
- ปุ่มเพื่อเพิ่มรายการ
- ตารางแสดงรายการทั้งหมด
สำหรับปุ่ม "ADD Journal Record" คุณต้องสร้างกระบวนการทางธุรกิจอย่างง่ายด้วย เมื่อคลิกปุ่ม ข้อความจากช่องป้อนข้อมูลควรถูกส่งไปยังปลายทางเพื่อสร้างระเบียนใหม่ และอีกปุ่มหนึ่งให้คลิกเพื่ออัปเดตเนื้อหาของตารางเป็นการดำเนินการสุดท้าย
สำหรับตารางเอง การตั้งค่ากระบวนการทางธุรกิจก็คุ้มค่าเช่นกัน แต่ในบทเรียนนี้ เราจะไม่พูดถึงเรื่องนี้ ข้อมูลที่จำเป็นทั้งหมดสามารถพบได้ใน บทเรียนเกี่ยวกับการตั้งค่าตาราง เป็นที่น่าสังเกตว่าเมื่อรับข้อมูลคุณต้องระบุ _with ด้วยพารามิเตอร์เพื่อรับข้อมูลจากตารางที่เกี่ยวข้อง (แม้ว่าในกรณีของเราตารางจะเกี่ยวข้องกับตัวมันเอง)
เราสามารถเผยแพร่แอปพลิเคชัน เพิ่มรายการเล็กน้อย และตรวจสอบว่าทุกอย่างทำงานได้อย่างถูกต้อง แต่ละรายการเกี่ยวข้องกับรายการในตารางเดียวกันจริงๆ ตัวอย่างเช่น สำหรับรายการที่มี ID 3 จะมีลิงก์ไปยังรายการก่อนหน้า (ID 2) และรายการถัดไป (ID 4)