
Liên kết ActiveRecord
has_many, belongs_to, has_one, has_and_belongs_to_many, polymorphic, dependent destroy
1Nên dùng liên kết nào trong model Comment để chỉ ra rằng một bình luận bắt buộc phải thuộc về một bài viết?
Nên dùng liên kết nào trong model Comment để chỉ ra rằng một bình luận bắt buộc phải thuộc về một bài viết?
Câu trả lời
Liên kết belongs_to được dùng để định nghĩa một mối quan hệ trong đó một bản ghi thuộc về một bản ghi khác. Trong trường hợp này, một Comment thuộc về một Article. Theo quy ước, điều này có nghĩa là bảng comments chứa cột article_id, là một foreign key trỏ đến bảng articles.
2Nên dùng liên kết nào trong model Article để cho phép có nhiều bình luận liên kết?
Nên dùng liên kết nào trong model Article để cho phép có nhiều bình luận liên kết?
Câu trả lời
Liên kết has_many định nghĩa một mối quan hệ một-nhiều. Một Article có thể có nhiều Comment. Liên kết này là hình ảnh phản chiếu của belongs_to và không lưu foreign key trong bảng của chính nó, mà mong đợi model liên kết (Comment) có cột article_id.
3Nên dùng liên kết nào để một người dùng có một hồ sơ duy nhất, trong đó hồ sơ chứa foreign key?
Nên dùng liên kết nào để một người dùng có một hồ sơ duy nhất, trong đó hồ sơ chứa foreign key?
Câu trả lời
Liên kết has_one định nghĩa một mối quan hệ một-một trong đó model còn lại chứa foreign key. Trong trường hợp User has_one :profile, bảng profiles sẽ chứa cột user_id. Đây là nghịch đảo của has_one/belongs_to tùy thuộc vào vị trí của foreign key.
Làm thế nào để mô hình hóa mối quan hệ nhiều-nhiều giữa Post và Tag với một bảng nối chứa các thuộc tính bổ sung?
Hành vi mặc định của tùy chọn dependent: :destroy trên một liên kết has_many là gì?
+21 câu hỏi phỏng vấn
Các chủ đề phỏng vấn Ruby on Rails khác
Kiến thức cơ bản về Ruby
Lập trình hướng đối tượng trong Ruby
Kiến thức cơ bản về Rails
Routing & Controllers
Kiến thức cơ bản về ActiveRecord
Views & Template ERB
Truy vấn ActiveRecord nâng cao
Form Rails
Xác thực & Phân quyền
Asset Pipeline hiện đại & frontend
Chế độ API của Rails
Kiểm thử với RSpec
ActiveJob & Background Jobs
ActionCable & WebSockets
ActionMailer
ActiveStorage
Chiến lược Caching
Migration nâng cao
Rails Engines & ứng dụng mô-đun
Tối ưu hóa hiệu năng
Design Patterns trong Rails
Lập trình meta trong Ruby
Bảo mật Rails
GraphQL với Rails
Triển khai & Sản xuất
Monitoring & Logging
Chiến lược nâng cấp Rails
Nắm vững Ruby on Rails cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí