Erstellen dynamischer „andWhere'-Abfragen in TypeORM
P粉334721359
P粉334721359 2023-08-03 14:25:08
0
1
495
<p>Ich versuche, einer Abfrage dynamisch eine Where-Klausel hinzuzufügen, um eine HTML-Tabelle zu filtern. Ich sende ein Objekt an meine API, das gefilterte Schlüssel-Wert-Paare enthält. Es sieht so aus: </p> <pre class="brush:php;toolbar:false;">{Standort: 'Seattle', Status: 'Aktiv'}</pre> <p> So füge ich die einzelnen Filter zur Abfrage hinzu: </p> <pre class="brush:php;toolbar:false;">const query = this.tableRepository.createQueryBuilder('myTable') .where('myTable.id = :id', {table_id}) Varind=1 for (myObj eingeben lassen){ var varname = 'searchVal' + String(ind) const searchVal = myObj[key] query.andWhere(`row_value.row_data->> '${key}' ILIKE :${varname}`, {varname: `%{searchVal%`}) }</pre> <p>Die Fehlermeldung, die ich immer wieder erhalte, ist die folgende: ERROR [ExceptionsHandler] Syntaxfehler bei oder in der Nähe von „:“ QueryFailedError: Syntaxfehler bei oder in der Nähe von „:“. Ich bin mir sicher, dass der Fehler durch {varname: '%{searchVal}%'} am Ende ausgelöst wird, aber ich weiß nicht, wie ich ihn ändern kann. </p>
P粉334721359
P粉334721359

Antworte allen(1)
P粉585541766

没关系,我弄明白了 - 我刚才有点傻。

我只需要将最后的{varname: '%{searchVal}%'}更改为{[varname]: '%{searchVal}%'}即可。

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage