niestandardowy pomocnik kierownicy - parametr nie został rozwiązany

# here is CreditCards controller context
{{#with controllers.currentCardCategory}}
  {{#each property in cardProperties}}
    {{#is property.symbol 'your_savings'}}
      <td class="td">{{yourSavings}}</td>
    {{else}}
      <td class="td">{{cardProperty this property.symbol}}</td>
    {{/is}}
  {{/each}}
{{/with}}

Tworzę tabelę dynamicznie. Cała zawartość pochodzi zArrayController z wyjątkiem jednej, która jest obliczoną właściwością pochodzącą ze sterownika.symbol' field is underscored likeAnnual_fee ”i należy doCreditCardProperty. Każda kategoria kart ma inny zestaw właściwości karty. Tylko dwie kategorie mają właściwości (kategoria ma wiele właściwości karty) i jeden rekordcomputed pole ustawione natrue. Oznacza to, że szablon powinien wyszukać odpowiedni kontroler.

Tak jaksymbol (np. age_to_apply) odnosi się do jednego z pól CreditCard (ageToApply) wszystko, co mogłem wymyślić, to użyćcardProperty pomocnik, który pobiera bieżącą kartę w kontekście (this) i rozwiązujeproperty.symbol, np .:

camelizedProperty = categoryProperty.camelize()
card.get 'camelizedProperty'

Idealnie chciałbym się obejść bez pomocnika i użyć go w ten sposób:

# *** {{property.symbol}} should look up this context
#     and become e.g {{annual_fee}} or {{annualFee}} - is it possible?
{{#with controllers.currentCardCategory}}
  {{#each property in cardProperties}}
    <td class="td">{{property.symbol}}***</td>
  {{/each}}
{{/with}}

Ale problem polega na tym, że nie wiem, jak mogę oddać część „{{yourSavings}” ”. Pomocnik, którego widzisz, pochodzi odswag kolekcja pomocników kierownicy. Pomocnik niestety nie rozwiązuje właściwości, więcproperty.symbol staje się sznurkiem.

Oto jest:

Handlebars.registerHelper 'is', (value, test, options) ->
  if value is test then options.fn(@) else options.inverse(@)

Myślę, że to możliwe, alez odpowiednim pomocnikiem - Nie wiem jednak, który.

Chciałbym uniknąć uciekania się do obliczonej własności, takiej jakif isYourSavings.

questionAnswers(1)

yourAnswerToTheQuestion