Laravel: Làm việc với các mối quan hệ hùng hồn

Laravel giúp giao tiếp với cơ sở dữ liệu dễ dàng hơn với Eloquent. Khi làm việc với Eloquent Relationships , khi gọi các biến động (với sự trợ giúp của các phương thức ma thuật của PHP), bạn nên lưu ý rằng các phiên bản của mô hình không phản ánh những thay đổi mới, nhưng được lưu vĩnh viễn khi bạn gọi chúng lần đầu tiên.


Trong ví dụ sau, nó hoạt động như mong đợi:

6d32588c32f080ef1896633f261e1e14

$ model-> col luôn trả về giá trị cũ ngay cả sau khi thay đổi (vì ban đầu giá trị được tìm nạp một lần với Model :: find (42) và sau đó được lưu). Nếu bây giờ bạn giải quyết một bảng khác, được liên kết với $ model-> depend_table , bạn có thể mong đợi rằng lệnh gọi thứ hai của nó sẽ trả về giá trị mới:

6d32588c32f080ef1896633f261e1e14

Đây cũng không phải là trường hợp ( $ depend_table = $ model-> dependant_table lưu vào bộ nhớ đệm toàn bộ bảng phụ thuộc). Để nhận được giá trị hiện tại, hàm được xác định rõ ràng là dependant_table () được gọi là:

6d32588c32f080ef1896633f261e1e14

Trở lại