所以我有一个视图,它将渲染一个包含图像的模板。此图像取决于传入的变量,该变量位于资产/images中。
基本上,我如何将这个模型传递到模板中,以便它能够渲染正确的图像?
通常在Rails
中,我只会在Rails ERB
模板中执行:
<img class="item-portrait"
src="<%= image_path("items/" + item.name.gsub(" ", "-").downcase + ".png")
%>">
如何在JST
模板中实现相同的效果?
让我们假设您的模型如下所示:
var itemPortraitModel = new Backbone.Model({
'path' : 'path_to_file'
});
你的观点与此类似:
var ItemPortraitView = Backbone.View.extend({
template: JST['itemPortraitTemplate'],
render: function() {
this.$el.html(this.template(this.model.attributes));
return this;
}
});
然后在您的itemPortraitTemplate模板代码中,您的模型中的任何属性都将可用:
<img class="item-portrait"
src="<% print(("items/" + path + ".png") %>">