```getClient(request: IRequest): PrismaClient { ...
# orm-help
g
Copy code
getClient(request: IRequest): PrismaClient {
    const tenantId = this.getTenantId(request);
    let client = this.clients[tenantId];

    // create and cache a new client when needed
    if (!client) {
      const databaseUrl = process.env.DATABASE_URL!.replace('public', tenantId);

      client = new PrismaClient({
        datasources: {
          db: {
            url: databaseUrl,
          },
        },
      });

      console.log('CLIENT', client);

      // setup prisma middlewares if any
      client.$use(PrismaLoggingMiddleware());

      this.clients[tenantId] = client;
    }

    return client;
  }