strip_tags фактически удаляет теги из входных данных, что может быть не тем, что вы хотите.
Чтобы преобразовать строку в «безопасную строку» с угловыми скобками, амперсандами и кавычками, преобразованными в соответствующие объекты HTML, вы можете использовать фильтр escape :
from django.utils.html import escape
message = escape(form.cleaned_data['message'])
Обратная совместимость - не единственная причина. :-P
С более сложными схемами, такими как те, которые имеют сложные ограничения на значения, которые может принимать содержимое элемента, иногда вам нужно создать реальные объекты JAXBElement
. Обычно их нетривиально создавать вручную, поэтому методы create *
сделают за вас тяжелую работу. Пример (из схемы XHTML 1.1):
@XmlElementDecl(namespace = "http://www.w3.org/1999/xhtml", name = "style", scope = XhtmlHeadType.class)
public JAXBElement<XhtmlStyleType> createXhtmlHeadTypeStyle(XhtmlStyleType value) {
return new JAXBElement<XhtmlStyleType>(_XhtmlHeadTypeStyle_QNAME, XhtmlStyleType.class, XhtmlHeadType.class, value);
}
Вот как вы вставляете тег