是否可以像這樣在 Laravel 中創(chuàng)建自定義關(guān)系,SELECT tasks.* FROM tasksLEFT JOIN priorities ON tasks.priority_identifier LIKE CONCAT('%', priorities.identifier)WHERE priority.id = 10我可以使用查詢生成器來(lái)創(chuàng)建這個(gè)連接,但我怎樣才能將它作為 laravel 關(guān)系返回?編輯我試圖在不使用現(xiàn)有關(guān)系方法(hasMany、hasOne 等)的情況下做到這一點(diǎn)
2 回答

慕標(biāo)琳琳
TA貢獻(xiàn)1830條經(jīng)驗(yàn) 獲得超9個(gè)贊
我不認(rèn)為你可以創(chuàng)建自定義關(guān)系,除非覆蓋 Eloquent base class。
并添加您自己的。
但是您可以使用 Eloquentscopes
替代自定義關(guān)系。

蕪湖不蕪
TA貢獻(xiàn)1796條經(jīng)驗(yàn) 獲得超7個(gè)贊
是的,你可以像任何其他查詢構(gòu)建器一樣向 Laravel 關(guān)系添加條件。我不知道你的關(guān)系會(huì)是什么樣子,但你可以這樣做:
public function tasks()
{
return $this->hasMany(Task::class)
->where('priority', 10);
}
- 2 回答
- 0 關(guān)注
- 120 瀏覽
添加回答
舉報(bào)
0/150
提交
取消