簡體   English   中英

Laravel includesTo-指定字段

[英]Laravel belongsTo - Specifying fields

我正在處理一個belongsTo關系,但是需要知道如何指定要關聯的字段。

我有報告和汽車表。

汽車表具有ID字段作為UI。 報告有關汽車的信息時,希望將其從列表中刪除,以便使用示波器。

在我的報告表中,我將汽車ID存儲為“ vehicle_id”。

我有一個belongsTo:

public function deliveryProfitReports()
{
    return $this->belongsTo('DeliveryProfitReport', 'vehicle_id');
}

由於在cars表中尋找一個vehicle_id字段,因此返回錯誤。

如何更改此功能,使其指定汽車ID為vehicle_id。

編輯:修復了錯誤:

public function deliveryProfitReports()
{
    return $this->belongsTo('DeliveryProfitReport', 'id', 'vehicle_id');
}

但是這個范圍:

public function scopeNoDeliveryReports($query) {
    return $query->doesntHave('deliveryProfitReports');
}

$cars = Car::orderBy('RegistrationNumber')
    ->noDeliveryReports()
    ->get();

無法正常工作,請刪除行...

接下來是什么?

如果外鍵在另一個表中,則您實際上要使用hasOne

return $this->hasOne('DeliveryProfitReport', 'vehicle_id');

(此外,由於數據類型錯誤,OP也存在數據庫問題)

暫無
暫無

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

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