nocaute vinculando um relacionamento um para muitos sobre si mesmo (recursão no nocaute)
Portanto, no meu banco de dados, tenho um modelo que possui uma relação de um para muitos. Um bom exemplo disso é um sistema de comentários como no reddit.
Atualmente, estou fazendo algo parecido com isto:
<div class="body" data-bind="foreach: { data: Comments}">
<span data-bind="text: '(' + OrderQualifier + ') ' + Text"></span>
<!-- ko foreach: { data: Children } -->
<span data-bind="text: '(' + OrderQualifier + ') ' + Text"></span>
<!-- /ko -->
</div>
que obviamente suporta apenas um nível de filhos. Existe uma maneira limpa de estruturar isso quando uma Criança (Filhos [i]) pode ou não ter também uma matriz Filhos que precisa ser repetida. No meu exemplo, tecnicamente, pode haver níveis infinitos como este (não será).
Tenho certeza de que poderia criar algo hacky, mas acho que pode haver uma maneira melhor. Obrigado.
Editar:
Dados que eu gostaria de mapear:
{
"@odata.context":"http://localhost:3080/odata/$metadata#SectionApi(*)/$entity",
"SectionID":4,
"Text":"Text",
"Html":null,
"OrderQualifier":"1",
"IsUserCreated":false,
"Children":[
{
"@odata.context":"http://localhost:3080/odata/$metadata#SectionApi(*)/$entity",
"SectionID":4,
"Text":"Text",
"Html":null,
"OrderQualifier":"1",
"IsUserCreated":false,
"Children":[
{
"@odata.context":"http://localhost:3080/odata/$metadata#SectionApi(*)/$entity",
"SectionID":4,
"Text":"Text",
"Html":null,
"OrderQualifier":"1",
"IsUserCreated":false,
"Children":[
{
"@odata.context":"http://localhost:3080/odata/$metadata#SectionApi(*)/$entity",
"SectionID":4,
"Text":"Text",
"Html":null,
"OrderQualifier":"1",
"IsUserCreated":false,
"Children":[
]
}
]
}
]
}
]
}
Como você pode ver, ele contém três níveis de comentário filho, mas eu preciso ser capaz de lidar com um número desconhecido de comentários filho.