Ember Handlebars не автоматически помещают модель в область видимости
Как правило, Ember автоматически помещает модель маршрута в область видимости при рендеринге шаблона руля:
<h1>{{ title }}</h1>
Оказывает:
<h1>My Title</h1>
По некоторым причинам, это не делает это для меня с определенным маршрутом. Я просто пустую <h1></h1>
, Однако, если я вручную поместил это в область видимости:
<h1>{{ model.title }}</h1>
Тогда все работает как положено. Что может быть причиной такого поведения? Мой маршрут прост:
MeetingsShowRoute = Ember.Route.extend
model: (params) ->
@store.find('meeting', params.id)
`export default MeetingsShowRoute`
И соответствующий вид, и контроллер пусты.
1 ответ
Решение
Ваш контроллер, вероятно, расширяет класс контроллера, когда он должен расширять контроллер объекта.
MeetingsShowController = Ember.ObjectController.extend ...
Практическое правило:
Нет модели с поддержкой контроллера
FooControler = Ember.Controller.extend
Контроллер с одной моделью
FooControler = Ember.ObjectController.extend
Коллекция Model поддерживается контроллером
FooControler = Ember.ArrayController.extend