Как вставить INTO столбец массива postgres, используя почтальон JSON? - PullRequest
0 голосов
/ 05 февраля 2020

У меня есть таблица со столбцом массива myarray text[]. Я создал конечную точку для вставки в массив

exports.createVaraus = async (id, myarray) =>$    try {
        const result = await client.query('INSERT INTO mytable (id, myarray) VALUES ($1, $2) RETURNING id', 
 [id, myarray]
        );
        return result.rows[0]
    } catch (err) {
        throw new Error(err);
    }
}

Теперь, когда я делаю POST с почтальоном со следующим JSON:

{
    "id": 1,
    "myarray": {"column1": "test"}
}

, я получаю следующую ошибку:

"message": "ошибка: литерал неверного массива: \" {\ "column1 \": \ "test \"} \ ""

Что не так и как это сделать это правильно?

1 Ответ

0 голосов
/ 05 февраля 2020

Моя таблица содержит 2 столбца: id и myarray.

Я использую express.

Тело моего запроса:

  exports.updateVaraus = async(request, response) => {
    try {
      let {id} = request.params;
      const varausObject = request.body;
      const updatedVaraus = await varausModel.updateVaraus(varausObject, id);
      response.status(200).send(updatedVaraus);
    } catch (err) {
      response.status(400).send({message: err.message});
    }
  }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...