😸

TypeORMのQueryBuilderで条件付きメソッドチェーン

1 min read

やりたいこと

メソッドチェーンでQueryBuilderを構築するとき、条件付きでwhereを追加するのって
見通しよくかけないか?

現状

searchQuery = repository
      .createQueryBuilder('member')
      .innerJoinAndSelect('member.age', 'age')

if (status) {
	searchQuery = searchQuery.andWhere('status = :status', { status });
}

結論

.andWhere(status ? `status = :status` : '1=1', { status })

https://github.com/typeorm/typeorm/issues/3103#issuecomment-490805889

Discussion

ログインするとコメントできます