Извлечение данных из 3 связанных таблиц - PullRequest
0 голосов
/ 01 февраля 2019

Я пытаюсь создать приложение, похожее на REST-API, с ExpressJS и MySQL.У меня есть такая структура таблицы:

Course Table:
+----+--------+
| ID | TITLE  |
+----+--------+
|  1 | titel1 |
+----+--------+

Sections Table:
+----+----------+-----------+-----------+
| ID |  TITLE   |  CONTENT  | COURSE_ID |
+----+----------+-----------+-----------+
|  1 | Section1 | Content 1 |         1 |
|  2 | Section2 | Content 2 |         1 |
+----+----------+-----------+-----------+

Content Table:

+----+--------+----------+------------+
| ID | TITLE  | CONTENT  | SECTION_ID |
+----+--------+----------+------------+
|  1 | Title1 | Content1 |          1 |
|  1 | Title2 | Content2 |          2 |
+----+--------+----------+------------+
{
id: 1,
title: title1,
sections: [
    {
        id: 1,
        title: section1,
        text: Content 1,
        contents: [
            CONTENT OBJECT HERE
        ]
    },
    {
        id: 2,
        title: section2,
        text: Content 2,
        contents: [
            CONTENT OBJECT HERE
        ]
    }

]

}

Я уже получаю данные курса и соответствующие разделы.Но есть какая-то проблема с асинхронностью и функцией карты, которую я точно не получаю ..

На самом деле я делаю это: извлекаю один курс по идентификатору и затем использую его обратный вызов, чтобы получить разделы, которые принадлежат этому курсу.Я добавляю разделы к объекту курса и возвращаюсь наконец.Это прекрасно работает.

Но если я зациклюсь на каждом разделе и попытаюсь запросить его содержимое, похоже, что моя функция map () не будет ждать, пока все не будет завершено ..

Есть ли какие-либорешение для этого случая?Я думаю, что это действительно очень распространенная задача - выполнять подобные запросы.Я не понимаю, почему так сложно реализовать эту функцию.

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