sql >> データベース >  >> RDS >> PostgreSQL

TypeORMFindOperatorsとトランスフォーマー

    さて、コードとTypeORMでクエリがどのように組み立てられるかを数時間読んだ後、次の解決策を思いつきました。

    toPostgres(value : any) : any {
        let returnValue = null;
        if(! value) {
          return null;
        } else if(value instanceof CustomClass) {
          returnValue = `${value.propertyA} ${value.propertyB}`;
        } else {
          let findValue = value as FindOperator<CustomClass>;
          returnValue = new FindOperator<CustomClass>( findValue[`_type`] as FindOperatorType, toPostgres(findValue.value), findValue.useParameter, findValue.multipleParameters)
        }
        return returnValue;
      }
    

    つまり、すべてのFindOperatorの_valueプロパティにトランスフォーマー関数を再帰的に適用する必要がありました。




    1. Psycopg2は、小文字で始まるテーブル名を好みません

    2. ElasticSearchをSQLと自動的に同期する

    3. Postgresでのみ関数のバックアップを取る方法

    4. どちらが速いですか:複数の単一のINSERTまたは1つの複数行のINSERT?