Ответ 1
Возможно, вы захотите сделать две вещи:
-
Отрегулируйте данные, которые вы передаете в шаблон:
$(this.el).html(this.template({ action: this.model.toJSON() }));
-
Отрегулируйте внутреннюю часть шаблона, чтобы использовать
acs.label
вместоlabel
:<a class="btn"><%= acs.label %></a>
Демо: http://jsfiddle.net/ambiguous/xczBy/
С другой стороны, я думаю, вы должны работать с коллекцией, а не с одной моделью. Вы хотите добавить это:
var ActionCollection = Backbone.Collection.extend({
model: Action
});
И затем настройте render
на использование this.collection
:
$(this.el).html(this.template({
actions: this.collection.toJSON()
}));
И затем начните так:
var actions = new ActionCollection(acs);
var actionView = new ActionView({collection: actions});
И, наконец, обратитесь к actions
в шаблоне:
<% _.each(actions, function(acs) { %>
Демо: http://jsfiddle.net/ambiguous/6VeXk/
Это будет лучше соответствовать базовым моделям на основе базы/значения.