我有兩個模型,word和meaning,處于多對多關系中。型號含義:public function words(){ return $this->belongsToMany(Word::class);}示范詞:public function meanings(){ return $this->belongsToMany(Meaning::class);}我需要找到所有與他們自己的名字相同的詞的含義。我試過:$meanings = Meaning::whereHas('word', function ($query) { $query->where('meaning.name', 'word.name'); })->get();但這會搜索字面上稱為"word.name"的含義。任何的想法 ?謝謝!
1 回答

30秒到達戰場
TA貢獻1828條經驗 獲得超6個贊
在這種情況下有一個特殊的“where”,它是“whereColumn”,這意味著在兩列之間進行比較:
$meanings = Meaning::whereHas('word', function ($query) { $query->whereColumn('meaning.name', 'word.name'); })->get();
更多詳細信息: https ://laravel.com/docs/7.x/queries#where-clauses
- 1 回答
- 0 關注
- 144 瀏覽
添加回答
舉報
0/150
提交
取消