Wpis z mikrobloga

Używam biblioteki knex.js i Nodejs
Jeśli zapisuje jakąś wartość w SQLite jako kolumna json i zapisuje ją zgodnie z dokumentacją:

knex.table('users')
.where({id: 1})
.update({json_data: JSON.stringify(mightBeAnArray)});

A następnie jak pobieram zapytaniem w express, to zwraca mi escapeowane dane:
"[\"Javascript\",\"NodeJs\"]" - pytanie czy ja coś źle robię, czy powinienem dla poszczególnych kolumn użyć JSON.parse?

#programowanie #nodejs
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Hauleth: No ale to nie powinno działać z automatu? Skoro tabelka SqLite ma typ jsonb.
Bez sensu, żebym to ręcznie parsował później w nodejs, równie dobrze mógłbym użyć typu TEXTw bazie danych
  • Odpowiedz
Podgląd w SQLite viewer pokazuje ładnie typ kolumny JSON i dane w formacie JSONa. Więc dlaczego Knex zwraca mi to w formie stringa?
  • Odpowiedz