簡體   English   中英

Eloquent ORM中的leftJoin方法?

[英]leftJoin method in Eloquent ORM?

我是 Laravel 的初學者,我使用的是 5.5 版本。

Eloquent ORM 中是否有 leftJoin 方法?

我知道 DB 門面(查詢構建器)上有一個,但是如果我只想使用 Eloquent,是否有 leftJoin 方法?

例如,假設我有一個模型 CarBrand 和另一個模型 CarModel。 CarBrand 與 CarModel 有一個關系類型 hasMany,而 CarModel 屬於 CarBrand。

假設我想在沒有 CarModel 對應關系的情況下找到 CarBrand 的 id。

我在這個網站上找到了幾個這樣的回復:

CarBrand::leftJoin('CarModelTableName',
    'CarBrandTableName.id','=','CarModelTableName.carBrandId')->
    whereNull('CarModelTableName.carBrandId')->first();

我已經檢查過了,它確實起到了左連接的作用:)

但在這種情況下, ::leftJoinEloquent方法還是默默地轉到 DB 門面?

除了 DB 外觀之外,我在 Laravel 5 官方文檔中找不到任何用於 leftJoin 的內容。 任何鏈接將不勝感激。

希望我很清楚,

感謝您的關注。

我想我找到了答案......

我發現我可以使用類似的東西:

LaravelModellName::AnyQueryBuilderMethod

所以這就是為什么使用 DB 門面方法

我的主要問題中的問題可以使用 dontHave 模型方法以雄辯的方式 100% 解決:

 $result = CarBrand::doesntHave('RelationshipNameWithCarModel')->get();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM