
การเชื่อมโยงของ ActiveRecord
has_many, belongs_to, has_one, has_and_belongs_to_many, polymorphic, dependent destroy
1ควรใช้การเชื่อมโยงใดในโมเดล Comment เพื่อระบุว่าความคิดเห็นต้องเป็นของบทความหนึ่ง?
ควรใช้การเชื่อมโยงใดในโมเดล Comment เพื่อระบุว่าความคิดเห็นต้องเป็นของบทความหนึ่ง?
คำตอบ
การเชื่อมโยง belongs_to ใช้เพื่อกำหนดความสัมพันธ์ที่เรคคอร์ดหนึ่งเป็นของอีกเรคคอร์ดหนึ่ง ในกรณีนี้ Comment เป็นของ Article ตามแบบแผนแล้ว นี่หมายความว่าตาราง comments มีคอลัมน์ article_id ซึ่งเป็น foreign key ที่ชี้ไปยังตาราง articles
2ควรใช้การเชื่อมโยงใดในโมเดล Article เพื่อให้สามารถมีความคิดเห็นที่เชื่อมโยงได้หลายรายการ?
ควรใช้การเชื่อมโยงใดในโมเดล Article เพื่อให้สามารถมีความคิดเห็นที่เชื่อมโยงได้หลายรายการ?
คำตอบ
การเชื่อมโยง has_many กำหนดความสัมพันธ์แบบหนึ่ง-ต่อ-หลาย Article หนึ่งสามารถมีได้หลาย Comment การเชื่อมโยงนี้เป็นภาพสะท้อนของ belongs_to และไม่เก็บ foreign key ไว้ในตารางของตัวเอง แต่คาดหวังให้โมเดลที่เชื่อมโยง (Comment) มีคอลัมน์ article_id
3ควรใช้การเชื่อมโยงใดเพื่อให้ผู้ใช้มีโปรไฟล์เดียว โดยที่โปรไฟล์เก็บ foreign key ไว้?
ควรใช้การเชื่อมโยงใดเพื่อให้ผู้ใช้มีโปรไฟล์เดียว โดยที่โปรไฟล์เก็บ foreign key ไว้?
คำตอบ
การเชื่อมโยง has_one กำหนดความสัมพันธ์แบบหนึ่ง-ต่อ-หนึ่ง โดยที่โมเดลอีกฝั่งเก็บ foreign key ไว้ ในกรณี User has_one :profile ตาราง profiles จะมีคอลัมน์ user_id นี่คือสิ่งที่ตรงข้ามกันระหว่าง has_one/belongs_to ขึ้นอยู่กับว่า foreign key อยู่ที่ใด
จะสร้างแบบจำลองความสัมพันธ์แบบหลาย-ต่อ-หลายระหว่าง Post และ Tag โดยใช้ตาราง join ที่มีแอตทริบิวต์เพิ่มเติมได้อย่างไร?
พฤติกรรมเริ่มต้นของออปชัน dependent: :destroy บนความสัมพันธ์ has_many คืออะไร?
+21 คำถามสัมภาษณ์
หัวข้อสัมภาษณ์ Ruby on Rails อื่นๆ
พื้นฐาน Ruby
การเขียนโปรแกรมเชิงวัตถุใน Ruby
พื้นฐาน Rails
Routing & Controllers
พื้นฐาน ActiveRecord
Views และ ERB Templates
การสอบถาม ActiveRecord ขั้นสูง
ฟอร์ม Rails
การยืนยันตัวตนและการอนุญาต
Asset Pipeline สมัยใหม่และ frontend
โหมด API ของ Rails
การทดสอบด้วย RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
กลยุทธ์การ Caching
การ Migration ขั้นสูง
Rails Engines และแอปแบบโมดูลาร์
การเพิ่มประสิทธิภาพการทำงาน
Design Patterns ใน Rails
เมตาโปรแกรมมิงใน Ruby
ความปลอดภัยของ Rails
GraphQL กับ Rails
การดีพลอยและโปรดักชัน
Monitoring & Logging
กลยุทธ์การอัปเกรด Rails
เชี่ยวชาญ Ruby on Rails สำหรับการสัมภาษณ์ครั้งถัดไป
เข้าถึงคำถามทั้งหมด flashcards แบบทดสอบเทคนิค แบบฝึกหัด code review และตัวจำลองสัมภาษณ์
เริ่มใช้ฟรี