JSON.stringify не работает нормально дает дополнительный "" ключ к JSON - PullRequest
0 голосов
/ 11 ноября 2018

Когда я делаю JSON.stringify массива, используя

let query = '{"query":"mutation {\\n  insert_'+table_name +'(objects: '+ 
JSON.stringify(objects)+', on_conflict: {action: update, constraint: '+table_name +
'_h_id_key, update_columns: '+update_columns+
'}) {\\n    affected_rows\\n  }\\n}\\n","variables":null}';

это дает мне это

{"query":"mutation {\n  insert_users(objects: [{"h_id":"118208723166374240159","career_id":"118208723166374240159","name":"Joey Dash","email":"joydassudipta@gmail.com","role":"user","image_url":"https://lh3.googleusercontent.com/-hjMQ9VBKHIw/AAAAAAAAAAI/AAAAAAAAFDk/ePiRR90JHaM/s96-c/photo.jpg"}], on_conflict: {action: update, constraint: users_h_id_key, update_columns: [name,email,role]}) {\n    affected_rows\n  }\n}\n","variables":null}

обратите внимание, что каждый ключ получает "", который я не хочу Я хочу что-то вроде этого

{"query":"mutation {\n  insert_users(objects: [{h_id: \"esda\", career_id: \"esda\", name: \"joey\", email: \"joey@joey.com\", role: \"user\", image_url: \"kajids.png\"}], on_conflict: {action: update, constraint: users_h_id_key, update_columns: [name, email, image_url]}) {\n    affected_rows\n  }\n}\n","variables":null}

Я хочу это так, потому что я использую graphql, и это дает мне много ошибок

Есть ли в любом случае, чтобы сделать это так

1 Ответ

0 голосов
/ 11 ноября 2018

Это хорошее начало, которое у вас есть, но, поскольку вы уже форматируете JSON, в который вы добавляете JSON.stringify (объекты), он не отформатирован должным образом для этого размещения. Вместо этого вы хотите построить свою собственную строку и объединить ее (как вы делаете с именем таблицы).

(objects: ['+ objects.map(function(object){ var str = '{'; /* iterate over key, value of object, adding it to string */ return str + '}';}).join(',') +']

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...