Pgsql erreur: Vous pourriez avoir besoin d'ajouter de type explicite jette

Mon site est simplement de travailler fine til je déployée à heroku et le problème est heroku utilise pgsql et je suis en utilisant mysql et le framework laravel.

ma requête est

$patient = Patient::where('patient_address', 'ILIKE' ,'%' . $request->input)->where('patient_sex', 'ILIKE' ,'%' . $request->gender)->whereHas('users', function($q) use($vaccine_id){
        $q->where('vaccine_id','ILIKE','%' . $vaccine_id);
    })->get();

voici ce que j'obtiens quand je le déployer à heroku

SQLSTATE[42883]: Undefined function: 7 ERROR: operator does not exist: integer ~~* unknown
LINE 1: ...ient_id" = "patients"."PatientID" and "vaccine_id" ILIKE $3)

HINT: No operator matches the given name and argument type(s). You might need to add explicit type casts. (SQL: select * from "patients" where "patient_address" ILIKE %San Francisco and "patient_sex" ILIKE % and exists (select * from "vaccines" inner join "immunizations" on "vaccines"."VaccineID" = "immunizations"."vaccine_id" where "immunizations"."patient_id" = "patients"."PatientID" and "vaccine_id" ILIKE %))

J'ai essayé d'utiliser cast comme CAST(vaccine_id QUE VARCHAR) et je n'obtenez pas l'erreur, mais il ne retourne aucun résultat.

Je ne connais pas cette API bien, mais where "patient_address" ILIKE %San Francisco est faux, San Francisco doit être entre guillemets simples autant que je sache.
c'est une variable $request->input = san fancisco comment puis-je mettre des guillemets simples sur elle?
Je ne suis pas sûr, que je peux vous dire que si le résultat de la requête est mot à mot, alors que c'est faux.

OriginalL'auteur Christian | 2017-02-10