This is what I'm doing now: ``` await Promise.al...
# orm-help
i
This is what I'm doing now:
Copy code
await Promise.all(
    apiMarkets.map((market) => {
      return apolloClient.mutate({
        mutation: upsertMarket,
        variables: market,
      })
    }),
  )
s
This is pretty ugly, but this is how I’m doing insertion of multiple records simultaneously:
Copy code
async createTopMedia() {
    let mediaToCreate = []
    let i = 0
    for (let media of this.rawInstagramMedia.sort(
      (a, b) => b.likes - a.likes
    )) {
      mediaToCreate.push({
        instagramAccount: {
          connect: {
            id: this.instagramAccountId
          }
        },
        instagramMediaId: media.id,
        instagramUserId: this.user.id,
        likes: media.likes.count,
        postedAt: new Date(parseInt(media.created_time * 1000)).toISOString(),
        thumbnailUrl: media.images.thumbnail.url
      })
      i = i + 1
      if (i === 100) {
        break
      }
    }

    let stringifiedMedia = JSON.stringify(mediaToCreate).replace(
      /\"([^(\")"]+)\":/g,
      '$1:'
    )

    const query = `mutation CreateMediaBatch($name: String!, $colourReportRequestId: ID) {
      createMediaBatch(

        data:{
          name: $name
          instagramMedias: {
            create: ${stringifiedMedia}
          }
          colourReportRequest: {
            connect: {
              id: $colourReportRequestId
            }
          }
        }
        
      ){
        id
      }
    }`
    console.log('Create media query', query)

    const result = await client
      .request(query, {
        name: `${this.username}=${new Date().toISOString()}`,
        colourReportRequestId: this.colourReportRequestId
      })
      .then(data => {
        //console.log(data)
        this.mediaBatch = data.createMediaBatch

        return data
      })
      .catch(e => {
        if (e.message.includes('unique constraint')) {
          // ignore this for now
        } else {
          throw e
        }
      })
    return true
  }