У меня есть проект Backbone.js с Rails 3.2.3, и он работает, но я хочу его очистить и поместить шаблон в отдельный JST-файл.Файлы шаблонов Backbone.js в Rails 3.2
я первый создал каталог для хранения моих шаблонов
<project>/app/assets/templates/appointments
Затем я создал файл там называется 'show.jst.
Из того, что я прочитал мне не нужно устанавливать Jammit под Rails 3.2.x, поэтому я пошел вперед и попытался преобразовать следующий код, чтобы использовать внешний файл шаблона:
window.AppointmentView = Backbone.View.extend({
template: _.template('<h3><%= topic %></h3>'),
render: function(){
var attributes = this.model.toJSON();
this.$el.html(this.template(attributes));
return this;
}
});
Вот моя попытка до сих пор:
window.AppointmentView = Backbone.View.extend({
render: function(){
var attributes = this.model.toJSON();
var html = JST['appointments/show'](attributes);
this.$el.html(html);
return this;
}
});
Внутри моего файла show.jst я получил следующее:
<h3><%= topic %></h3>
(тема - поле в моей модели «Назначение»)
Это не показывает никаких ошибок на экране и не печатает ничего на экране.
Как исправить это, чтобы использовать внешние файлы шаблонов?
Update
Я уверен, что я есть required_tree ./templates или ../templates (в зависимости от расположения я тестируя) прежде, чем все остальные требуют утверждения типа так:
#= require jquery
#= require jquery_ujs
#= require backbone-rails
#= require_tree ../templates
#= require_tree ./models
#= require_tree ./collections
#= require_tree ./views
#= require_tree ./routers
Я пытался поставить свой файл шаблона show.jst в следующих
приложение/активы/JavaScripts/шаблоны/назначения/show.jst
приложение/активы/шаблоны/встречи/show.jst
Я пробовал называть файл show.jst.ejs и включать в себя gem 'ejs' в моем Gemfile.
Ни один из них не загрузил шаблон. При хранении моих шаблонов под приложением/активы Я сделал, что он был на моем пути со следующим:
config.assets.paths << "#{ Rails.root }/app/assets/templates"
Это не помогло, но она избавиться от ошибки звездочек.
Я все еще не смог загрузить шаблон jst-файла, и все, что я прочитал, предлагает другой способ. Я пробовал многие из них, возможно, их не совместим с Rails 3.2.3.