Я использую Ember Data для создания веб-приложения, и как-то данные отображаются на одном шаблоне, а не на другом. Моя консоль Ember показывает, что модель правильно подключена к маршруту, но я не знаю, почему данные не будут отображаться.Мои данные отображаются на одной странице, а не на Ember
Данные, которые я пытаюсь показать, это {{stackTitle}} в стеке модели.
Я использую локальный адаптер для хранения данных, предоставляемый через учебник Ember ... возможно, это проблема?
Вот мой шаблон (тот, который не отображает данные):
<script type="text/x-handlebars" data-template-name="stack">
<div class="container-fluid">
<div class="row">
<a href="#"><button class="btn btn-default" type="button">Back</button></a>
<button class="btn btn-default" type="submit">Save</button>
</div>
<h1>
<label {{action "editStack" on="doubleClick"}}>{{stackTitle}}</label>
{{input
value=stackTitle
action="createStack"}}
{{debugger}}
<div>{{stackTitle}}</div>
</h1>
{{partial "todos"}}
</div>
</script>
А вот мой маршрутизатор:
Todos.StackRoute = Ember.Route.extend({
model: function(params) {
return this.store.find('stack', params.stack_id);
},
});
Мой контроллер:
Todos.StackController = Ember.Controller.extend({
setupController: function(controller, model) {
controller.set('model', model);
},
actions: {
createStack: function() {
var title = this.get('stackTitle');
if (!title.trim()) { return; }
var stack = this.store.createRecord('stack', {
stackTitle: title,
});
stack.save().then(function() {
var promises = Ember.A();
stack.get('todos').forEach(function(todo) {
promises.push(todo.save());
});
Ember.RSVP.Promise.all(promises).then(function(resolvedPromises){
alert('all saved!');
})
});
console.log(this.store.all('stack'));
},
}
});
Моя модель:
Todos.Stack = DS.Model.extend({
stackTitle: DS.attr('string'),
todos: DS.hasMany('todo', {async: true}),
isTaken: DS.attr('boolean'),
});
Мне бы очень хотелось, если бы вы могли указать мне в правильном направлении. Спасибо!
это полностью Спасибо. – sunoceansand