我有三個模型用戶,帖子和評論
User
-id
Post
-user_id
Comment
-post_id
我的表有問題,例如,某些帖子不存在或某些用戶行不存在。
我如何才能僅獲取具有 post_id 存在的評論,并且它還具有使用范圍最優選全域范圍存在的用戶的 user_id?
uj5u.com熱心網友回復:
我建議您首先嘗試解決資料庫中發生的這種例外情況。您可以使用可為空的外部 id 和外鍵約束來實作它。
如果您使用外鍵約束,則不會發生模型連接到不存在的模型。您可以將其設定為 null,即父資料庫中不存在的所有外來 id。
或者,您可以使用以下代碼:
Comment::whereHas('post', function($q){
$q->has('user');
})->get();
uj5u.com熱心網友回復:
假設您已經在模型中設定了關系,您可以使用以下whereHas方法獲取它們:
$commentsWithPostWhichHaveAUser = Comment::whereHas('Post', function($query){
$query->has('User');
});
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/422697.html
標籤:
上一篇:發布時從另一個表中獲取正文
