Maison  >  Questions et réponses  >  le corps du texte

Création de requêtes dynamiques « andWhere » dans TypeORM

<p>J'essaie d'ajouter dynamiquement une clause Where à une requête pour filtrer un tableau HTML. J'envoie un objet à mon API qui contient des paires clé-valeur filtrées. Cela ressemble à ceci : </p> <pre class="brush:php;toolbar:false;">{Emplacement : 'Seattle', Statut : 'Actif'}</pre> <p> Voici comment ajouter chaque filtre à la requête : </p> <pre class="brush:php;toolbar:false;">const query = this.tableRepository.createQueryBuilder('myTable') .where('maTable.id = :id', {table_id}) varind=1 pour (laisser la clé dans myObj){ var nomvar = 'searchVal' + String(ind) const searchVal = monObj[clé] query.andWhere(`row_value.row_data->> '${key}' ILIKE :${varname}`, {varname: `%{searchVal%`}) }</pré> <p>L'erreur que je continue à recevoir est l'erreur suivante : ERROR [ExceptionsHandler] erreur de syntaxe à ou près de : : QueryFailedError : erreur de syntaxe à ou près de : :. Je suis sûr que l'erreur est déclenchée par le {varname: '%{searchVal}%'} à la fin, mais je ne sais pas comment le modifier. </p>
P粉334721359P粉334721359444 Il y a quelques jours472

répondre à tous(1)je répondrai

  • P粉585541766

    P粉5855417662023-08-04 09:54:32

    C'est bon, j'ai compris – j'étais un peu idiot tout à l'heure.

    J'ai juste besoin de changer le dernier {varname: '%{searchVal}%'} en {[varname]: '%{searchVal}%'}.

    répondre
    0
  • Annulerrépondre