JOIN で複数の条件を使用しようとしましたが、Laravel は JOIN で定数値ではなくフィールドを比較すると想定しています。これをメソッドでラップしてからraw()
エスケープするDB::connection()->getPdo()->quote()
必要がありますか、またはこれへのショートカットはありますか?
->join('tags', function($join) use ($tags) {
$join->on('tags.id', '=', 'resource_tag.tag_id');
$join->on('tags.name', '=', $tags);
})
->join('tags', function($join) use ($tags) {
$join->on('tags.id', '=', 'resource_tag.tag_id');
$join->on('tags.name', '=', DB::raw(DB::connection()->getPdo()->quote($tags)));
})
これは機能しているように見えましたが、少し多かったようです。