Как получить индекс в TemplateCollectionView? - PullRequest
1 голос
/ 27 сентября 2011

Итак, я следовал руководству sproutcore «Начало работы» и начал уходить с пути, чтобы посмотреть, смогу ли я сделать то, что имел в виду.И вот я с этими шаблонами, которые представляют список входных файлов:

{{#collection SC.TemplateCollectionView 
  contentBinding="Upload.uploadListController"}}
   <label>{{content.title}}</label><input type="file" name="upload[]"/>
{/collection}}

Хорошо.Теперь я хотел бы воспользоваться атрибутом label for для указания на соответствующий ввод.В общем, я хотел бы вывести что-то вроде этого:

<label for="upload-0">Some label</label>
<input id="upload-0" type="file" name="upload[]"/>

<label for="upload-1">Some otherlabel</label>
<input id="upload-1" type="file" name="upload[]"/>
<!-- you get it -->

Как мне это сделать?Я не нашел ответа ни на странице с использованием руля , ни в документации sproutcore на SC.ArrayController

Я смотрю не в том месте?Пытаюсь ли я сделать что-то, что я должен сделать другим, более прорастающим способом?

1 Ответ

1 голос
/ 27 сентября 2011

Единственный способ сделать это - добавить в вашу модель поле id . Таким образом, вы можете использовать этот идентификатор в шаблоне.

{{#collection SC.TemplateCollectionView contentBinding="Upload.uploadListController"}}
   <label {{bindattr for="content.id"}} >{{content.title}}</label>
   <input {{bindattr id="content.id"}} type="file" name="upload[]"/>
{{/collection}}
...