Итак, у меня есть коллекция метеоров. Каждый объект/документ в этой коллекции может иметь неизвестную структуру. То есть я не знаю ни названия каждого свойства, ни их количества до времени выполнения.
По сути, каждый объект в коллекции создается из произвольных данных, которые люди предоставляют через мою страницу интерфейса (через загрузку CSV, которая отлично работает). Поэтому я не инициализирую коллекцию при запуске Meteor.
Теперь я хотел бы создать таблицу на своей HTML-странице, которая отображает коллекцию, но без предварительного определения того, сколько столбцов необходимо и каковы их имена.
Итак, как мне динамически установить количество и имена столбцов в моем шаблоне пробелов/HTML?
Итак, вот как далеко я продвинулся на стороне шаблона:
<table>
{{#each rows}}
{{> row}}
{{/each}}
</table>
...и шаблон:
<template name="row">
{{#if header}} <!-- header is explicitly set, so this is fine -->
<th>
{{#each WHAT?}}
<td>{{???}}</td>
{{/each}}
</th>
{{else}}
<tr>
{{#each WHAT?}}
<td>{{???}}</td>
{{/each}}
</tr>
{{/if}}
</template>
Я пытался найти любую ссылку в документации по пробелам и Blaze, но все примеры всегда требуют, чтобы я знал имена столбцов с самого начала.
Есть идеи?
Изменить: вот пример объекта, который я явно идентифицирую как заголовок через свойство заголовка:
... и "строки" выглядят так:
Итак, я солгал, по-видимому, в том, что имена моих свойств/столбцов всегда являются порядковыми номерами.
Чтобы ответить на другой вопрос: после того, как набор данных определен (коллекция заполнена), все объекты имеют одинаковое количество свойств (т.е. представьте таблицу csv, откуда всегда будут поступать мои данные).