2016-04-27 2 views
0

Итак, я осмотрелся и не могу найти надежного ответа.Данные не отображаются - Ember js - Rest Api

У меня есть модель для страницы, и у меня есть маршрут для получения данных из Api, и данные поступают в инспектор ember, но когда я пытаюсь вызвать его на странице, он не отображается.

https://github.com/stagfoo/ember-wip/blob/master/app/templates/page.hbs

Я пробовал {{название}}, {{Title}} {{}} page.title ничего не показывает.

Я читал Мне нужен контроллер, но я видел примеры без контроллера, которые делают то же самое.

Что мне недостает?

https://github.com/stagfoo/ember-wip

ответ

1

Вы должны попробовать

{{model.title}} 

Кроме того, я не понимаю, что вы пытаетесь сделать в вашей 'то (...)' в https://github.com/stagfoo/ember-wip/blob/master/app/routes/page.js.

Действительно, маршрут Ember предоставляет модель для шаблонов через значение, возвращаемое его крючком модели. При вызове API это значение является обещанием, которое будет разрешено после ответа сервера. Ember обрабатывает это обещание самостоятельно, и шаблон будет динамически обновляться.

Таким образом, вам не нужно называть себя «тогда», если вам не нужно настраивать другие данные и нужно ждать разрешения Promise. Более того, в этом конкретном случае ваша реализация «then» не делает ничего, кроме доступа к значению.

Пропустить что-нибудь?

+0

с использованием '{{model.title}}' будет иметь смысл, потому что на главной странице у меня есть '{{#each model as | page |}}', а затем '{{page.title}}', но я попробовал это и это не сработало. Это действительно странно. спасибо за объяснение «тогда», я думал, что это похоже на то, как вы можете использовать 'renderTemplate()', но в данный момент это не имеет значения. Я удалил «then» и удалил 'renderTemplate()' для упрощения. [Это то, что я пробовал] (https://github.com/stagfoo/ember-wip/blob/master/app/templates/page.hbs), цикл работает, но ничего другого :( – user1584760

+0

Отвечает ли ваш сервер не пустой и действительный JSON? Вы видите erros в консоли? – bmeurant

+0

Я думаю, что ваш шаблон в порядке, но ваш запрос не является. Во-первых, вы не должны запрашивать запрос, для нескольких записей. Используйте queryRecord для отдельной записи. Затем вы используете фильтр: {name: params.slug}. Это приведет к следующему запросу: http://you.host/pages?filter[name]=slug, который, очевидно, не является вашим API. try this.store.queryRecord ('page', { slug: params.slug} – bmeurant

Смежные вопросы