Question

Le générateur XML de rails par défaut échappe à tout le code HTML. Par exemple, quelque chose comme:

atom_feed do |feed|  
  @stories.each do |story|  
    feed.entry story do |entry|   
      entry.title story.title
      entry.content "<b>foo</b>"
    end  
  end  
end

produira le texte:

<b>foo</b>

au lieu de: toto

Existe-t-il un moyen de demander au générateur XML de ne pas échapper au XML?

Était-ce utile?

La solution

s’avère que vous devez faire

entry.content "<b>foo</b>", :type => "html"

Bien que l’envelopper dans un CDATA l’arrête de fonctionner.

Autres conseils

entry.content "type" => "html" do
    entry.cdata!(post.content)
end

http://builder.rubyforge.org/classes/Builder/XmlMarkup.html

  

Les caractères XML spéciaux < ;, > ;, et & amp; sont convertis en < ;, > et & amp; automatiquement Utilisez le & Lt; & Lt; opération pour insérer du texte sans modification.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top