Создание PI XML-таблицы стилей с помощью Rails XMLBuilder - PullRequest
0 голосов
/ 27 сентября 2008

Я хочу прикрепить таблицу стилей xslt к документу XML, который я создаю с помощью XMLBuilder. Это делается с помощью инструкции обработки, которая выглядит как

<?xml-stylesheet type='text/xsl' href='/stylesheets/style.xslt' ?>

Обычно я бы использовал метод instruct!, но :xml-stylesheet не является допустимым символом Ruby.

XMLBuilder имеет решение для этого случая для элементов, использующих метод tag!, но я не вижу эквивалента для Инструкций обработки.

Есть идеи?

Ответы [ 3 ]

5 голосов
/ 27 сентября 2008

Вы делаете это так:

xm.instruct! 'xml-stylesheet', {:href=>'/stylesheets/style.xslt', :type=>'text/xsl'}

Просто добавьте эту строку сразу после

xm.instruct! :xml, {:encoding=>"your_encoding_type"}

и до остальной части вашего выходного кода документа, и вы должны быть в порядке.

2 голосов
/ 27 сентября 2008

Я не уверен, что это решит вашу проблему, так как я не знаю инструкции! метод этого объекта, но: 'xml-stylesheet' является допустимым символом ruby.

0 голосов
/ 30 октября 2014

Если вы используете помощник atom_feed, вы можете передать его в опции instruct:

atom_feed(instruct: {
    'xml-stylesheet' => {type: 'text/xsl', href: 'styles.xml'}
  }) do |feed|
  feed.title "My Atom Feed"
  # entries...
end

В результате (отображаются только первые 3 строки):

<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="styles.xml"?>
<feed xml:lang="en-US" xmlns="http://www.w3.org/2005/Atom">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...