ข้ามไปที่เนื้อหาหลัก

ทำความเข้าใจเกี่ยวกับ Laravel Eloquent

 


สำหรับมือใหม่ที่เริ่มพัฒนาเว็บแอพพลิเคชันโดยใช้ Laravel เมื่อต้องทำงานที่เกี่ยวข้องกับ database อาจจะต้องปวดหัวกับ Eloquent และเรื่องราวในวันนี้จะมาพูดถึงว่า มันคืออะไร และใช้งานยังไง

อย่างที่ใน docs ได้อธิบายคร่าวๆ ว่า Eloquent คือ ORM ตัวหนึงที่เสริมในเรื่องของ Relations เข้ามา ซึ่งการเชื่อมโยง หรือ Relations ไม่ไช่การ join แต่เป็นการบอกให้ Model รู้ว่ามี relations กับ table ไหนใน database ของเรา


ยกตัวอย่างเช่น

ข้อมูลของตาราง Users ที่เราออกแบบว่าจะแยกข้อมูลกันดังนี้

  • Users
  • Addresses
จาก 2 ตารางด้านบน เราจะทำการเขียนโค้ดให้เชื่อมข้อมูลกันจาก Model ของ Users โดยจะต้องมี column ที่นำมาเชื่อมกันด้วย เช่น ที่ตารางของ addresses จะต้องมี column user_id เก็บไว้ด้วย

โดยเราจะใช้ Relation One To One ในการทำ relation กัน 

หลายๆ คนจะ งง ว่ามำดึงข้อมูลมายังไง

จริงๆ ตัว Eloquent จะทำการ query มาใหม่ไม่ได้ใช้ query เดียว จาก ตัวอย่างข้างบน ถ้าทำถูกต้องได้ 2 query

select * from users where id='1'

select * from addresses where user_id=1


ความคิดเห็น