Retrieving Polymorphic Relations

https://viblo.asia/p/eloquent-relationships-in-laravel-phan-2-aRBvXWEokWE

Mỗi khi bảng cơ sở dữ liệu và model của bạn được xác định, bạn có thể truy cập vào các mối quan hệ thông qua model của bạn. Ví dụ, để truy cập vào tất cả các comments cho một post, chúng ta có thể đơn giản sử dụng những property động:

$post = App\Post::find(1);

foreach ($post->comments as $comment) {
    //
}

Bạn cũng có thể truy xuất các chủ sở hữu của một mối quan hệ đa hình từ model đa hình bằng cách truy cập vào tên của method thực hiện gọi đến method morphTo. Trong trường hợp của chúng ta, đó là method commentable trên Comment model. Vì vậy, chúng ta sẽ tiếp cận phương pháp đó như là một property động:

$comment = App\Comment::find(1);

$commentable = $comment->commentable;

Các mối quan hệ commentable trên mô Comment model sẽ trả lại hoặc là một Post hay dụ Video instance, tùy thuộc vào loại mô hình sở hữu các comment.

Last updated