Je l'ai fait fonctionner et je poste la réponse ici au cas où quelqu'un aurait besoin d'aide à l'avenir.
Fondamentalement, nous pouvons faire un simple where
requête avec @>
opérateur. Et la valeur peut être encodée en json avec l'e-mail recherché. Voici la requête pour rechercher un e-mail particulier sans utiliser whereRaw
méthode.
$contacts = Contact::where("emails", '@>', '[' . json_encode(['value' => $query]) . ']')->get();
J'espère que cela aidera quelqu'un d'autre à l'avenir :)