การจัดการความสัมพันธ์ใน Laravel โดยยึดตามรูปแบบพื้นที่เก็บข้อมูล
ขณะสร้างแอปใน Laravel 4 หลังจากอ่านหนังสือของ T. Otwell เกี่ยวกับรูปแบบการออกแบบที่ดีใน Laravel ฉันพบว่าตัวเองกำลังสร้างที่เก็บสำหรับทุกตารางบนแอปพลิเคชัน ฉันลงเอยด้วยโครงสร้างตารางต่อไปนี้: นักเรียน: id, name หลักสูตร: id, name, teacher_id ครู: id, name Assignments: id, name, course_id คะแนน (ทำหน้าที่เป็นตัวหมุนระหว่างนักเรียนและงาน): student_id, assignment_id, คะแนน ฉันมีคลาสที่เก็บที่มีวิธีการค้นหาสร้างอัปเดตและลบสำหรับตารางเหล่านี้ทั้งหมด แต่ละที่เก็บมีแบบจำลองที่มีประสิทธิภาพซึ่งโต้ตอบกับฐานข้อมูล ความสัมพันธ์ที่กำหนดไว้ในรูปแบบเอกสารต่อ Laravel ของ: http://laravel.com/docs/eloquent#relationships เมื่อสร้างหลักสูตรใหม่สิ่งที่ฉันทำคือเรียกใช้เมธอด create บน Course Repository หลักสูตรนั้นมีงานมอบหมายดังนั้นเมื่อสร้างหลักสูตรฉันจึงต้องการสร้างรายการในตารางคะแนนสำหรับนักเรียนแต่ละคนในหลักสูตรด้วย ฉันทำสิ่งนี้ผ่าน Assignment Repository ซึ่งหมายความว่าที่เก็บงานมอบหมายจะสื่อสารกับโมเดล Eloquent สองแบบโดยใช้โมเดล Assignment และ Student …