Я новичок в ember, и я не могу найти нигде, где я могу добавить формат к своим ссылкам.

Мне нужно показать pdf-файл, поступающий с моего сервера, и в рельсах я бы сделал это следующим образом:

<%= link_to "Print", document, format: pdf %>

Предполагая, что мой сервер действительно отвечает на documents/:id.pdf, как я могу построить эту ссылку в ember, когда я нахожусь внутри цикла этого типа?

{{#each document in controller}}
  ...print document link here...
{{/each}}

Спасибо,
Марко

0
Alive Developer 9 Апр 2013 в 16:34

1 ответ

Лучший ответ

{{linkTo}} Ember предназначен для внутренних ссылок.

Если вы хотите создать ссылку на внешний ресурс, вы должны либо пользователь {{bindAttr}} в теге <a> или напишите собственный помощник Handlebars.

1
zeppelin 9 Апр 2013 в 17:00
Пытаясь написать это в правильном синтаксисе ... однако ... что-то вроде этого? СПРАВКА: Ember.Handlebars.registerBoundHelper ('document_pdf_url', function(document) { return 'documents/' + document.id + ".pdf"; }); ШАБЛОН: <a target="_blank" {{bindAttr href="transport_document_pdf_url(transport_document)"}}>Print</a>
 – 
Alive Developer
9 Апр 2013 в 17:24
Нет. Набор функций Handlebars не распространяется на вызовы функций в вспомогательных аргументах. Прочтите handlebarsjs.com, чтобы получить представление о том, какие функции поддерживаются в шаблонах, это отличное введение / руководство.
 – 
zeppelin
9 Апр 2013 в 17:42