Я использую backbone.js с вложенными моделями. Идея состоит в том, чтобы содержать все атрибуты автора, а также повторно использовать модель автора как для постов, так и для комментариев. По крайней мере, теоретически это имеет смысл, я думаю.
Однако, настроив такие вещи, я столкнулся с путаницей, как получить разные значения с помощью Handlebars. Handlebars не любит передавать объекты из того, что я читал. Я могу легко получить статус в {{#each}}
с помощью {{status}}
, но, естественно, {{author.name}}
не сработает.
Я рассматривал возможность использования помощника, однако, как вы можете видеть, у меня есть комментарии, вложенные внутрь, внутри которых будет вложен другой автор. Я не верю, что помощники внутри помощников будут работать.
Это образец объекта, извлеченный из консоли Chrome.
Object {items: Array[2]}
+items: Array[2]
+0: Object
+author: child
_changing: false
_pending: false
_previousAttributes: Object
+attributes: Object
name: "Amy Pond"
profileImage: "Amy.jpg"
__proto__: Object
changed: Object
cid: "c0"
__proto__: Surrogate
comments: child
id: "50f5f5d4014e045f000001"
status: "1- This is a sample message."
__proto__: Object
+1: Object
author: child
comments: child
id: "50f5f5d4014e045f000002"
status: "2- This is another sample message."
__proto__: Object
length: 2
__proto__: Array[0]
__proto__: Object
Я ошибаюсь в своей организации или есть лучший способ обработки многомерных данных? Или есть хороший способ для Handlebars добраться до каждого из значений?
Если есть более мощный движок шаблонов, я открываю варианты.