Как ответить JSON с Express JS - PullRequest
0 голосов
/ 19 марта 2020

Извините за плохой Engli sh, потому что я не говорю по-английски sh, только Google Translate:)

У меня есть один вопрос ..

У меня есть MySQL Запрос:

SELECT destinations.*, questions.*, answers.* FROM destinations INNER JOIN questions ON questions.quest_dest = destinations.dest_id INNER JOIN answers ON questions.quest_id = answers.answer_quest_id WHERE destinations.dest_active = 1

Этот запрос работает, не проблема. У меня есть один модальный файл в Express JS.

const connection = require('../utility/databaseConnection');

module.exports = class Destinations{
    static AllDestinations(){
        return connection.execute("SELECT destinations.*, questions.*, answers.* FROM destinations INNER JOIN questions ON questions.quest_dest = destinations.dest_id INNER JOIN answers ON questions.quest_id = answers.answer_quest_id WHERE destinations.dest_active = 1");

    } }

Если я получу, не проблема, ответ придет, и ... Не хорошо, приходите ..

    [
        {
            "dest_id": 2,
            "dest_name": "İstanbul",
            "dest_lat": "41.0078254",
            "dest_lng": "28.9777912",
            "dest_active": "1",
            "quest_id": 1,
            "quest_text": "Bir dönemler Dünya'nın merkezi olmuş bu tarihi şehir neresidir?",
            "quest_dest": 2,
            "answer_id": 1,
            "answer_text": "Moskova",
            "answer_quest_id": 1,
            "answer_true": 0,
            "answer_point": 6400
        },
        {
            "dest_id": 2,
            "dest_name": "İstanbul",
            "dest_lat": "41.0078254",
            "dest_lng": "28.9777912",
            "dest_active": "1",
            "quest_id": 1,
            "quest_text": "Bir dönemler Dünya'nın merkezi olmuş bu tarihi şehir neresidir?",
            "quest_dest": 2,
            "answer_id": 2,
            "answer_text": "İstanbul",
            "answer_quest_id": 1,
            "answer_true": 1,
            "answer_point": 10000
        },
]

Это это не хорошо, мне нужно это:

    [
        {
            "dest_id": 2,
            "dest_name": "İstanbul",
            "dest_lat": "41.0078254",
            "dest_lng": "28.9777912",
            "dest_active": "1",
            "questions": [
               {
                 "quest_id": 1,
                 "quest_text": "Bir dönemler Dünya'nın merkezi olmuş bu tarihi şehir neresidir?",
                 "quest_dest": 2,
                 "answers" : [
                   {  
                    "answer_id": 1,
                    "answer_text": "Moskova",
                    "answer_quest_id": 1,
                    "answer_true": 0,
                    "answer_point": 6400
                   },
                   {  
                    "answer_id": 2,
                    "answer_text": "İstanbul",
                    "answer_quest_id": 1,
                    "answer_true": 1,
                    "answer_point": 10000
                   }]
                }]
     }
]

1 Ответ

1 голос
/ 19 марта 2020

Поскольку вы получаете правильную информацию из базы данных, просто извлеките данные из этого объекта и добавьте их в новом формате, который вы хотите.

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