Здравствуйте, товарищи! Помогите пожалуйста разобраться с задачей.
В базе данных
Oracle есть таблица с такой структурой:
| organization_id | ogranization_name | parent_id | level |
|-----------------|-------------------|-----------|-------|
| 1 | Facebook | | 0 |
| 2 | Instagram | 1 | 1 |
| 3 | Whatsapp | 1 | 1 |
| 4 | Dynamic | 2 | 2 |
| 5 | Google | | 0 |
В данной таблице представлена структура хранение иерархических данных. В моем случаи это иерархия организаций.
У меня возник вопрос, как обычно вы в приложении Golang парсите данные, чтобы получить древовидную структуру JSON в качестве ответа:
[
{
"organization_id": 1
"ogranization_name": "Facebook",
"childs": [
{
"organization_id": 2,
"ogranization_name": "Instagram",
"childs": null
},
{
"organization_id": 3,
"ogranization_name": "Whatsapp",
"childs": [
{
"organization_id": 4,
"ogranization_name": "Dynamic",
"childs": null
}
]
}
]
},
{
"organization_id": 5
"ogranization_name": "Google",
"childs": null
}
]
Есть ли готовые пакеты для этих целей? Есть ли какие-то best practice о которых вы знаете и применяли?