Quiero aumentar el valor de la columna 'reactionType' en mi tabla en 1 de acuerdo con el valor 'reactionType' que obtengo de la API. El tipo de reacción es un punto final variable. por ejemplo, /me gusta /no me gusta ... Si se recibe un me gusta, aumentaré el valor de la columna me gusta. Si no me gusta, aumentaré el valor de la columna de no me gusta.
@patch('/news-reaction/{id}/{reactionType}') @response(204, { description: 'updateReaction PATCH success', }) async updateReaction( @param.path.number('id') id: typeof News.prototype.id, @param.path.string('reactionType') reactionType: string, ): Promise<void> { await this.newsReactionRepository.execute('UPDATE `news_reaction` SET `${reactionType}` = `${reactionType}` +1 WHERE `newsId`=?', [id,reactionType]); } }Estoy recibiendo un error. ¿Cómo debería ser?
error: la solicitud PATCH /news-reaction/431224/sad falló con el código de estado 500. Error: ER_BAD_FIELD_ERROR: Columna desconocida '${reactionType}' en 'lista de campos'
Creo que hay dos problemas en tu código:
No pude probarlo, pero espero que funcione.
await this.newsReactionRepository.execute( 'UPDATE `news_reaction` SET `?` = `?` + 1 WHERE `newsId` = ?', [reactionType,reactionType,id] );