2010-06-16 3 views
0

У меня есть несколько значений валюты в поле выбора формы (то есть £2,500). Когда форма отображается, хотя она поддерживает £ как есть, есть ли способ конвертировать ее в фактический знак фунта?Отображение символа фунта/валюты на входе выбора Django

+1

Дубликат http://stackoverflow.com/questions/777458/django-form-values-without-html-escape? – msanders

ответ

2

Если у вас есть вопросы по данному вопросу правильно, проблема заключается в том, что £ автоматически экранируется библиотекой формы и поэтому отображается как £ пользователем, а не £.

Вы, вероятно, может решить эту проблему, говоря Джанго, что HTML-код является безопасным и не должны быть экранированы (может быть дыра в безопасности XSS):

from django.utils.safestring import mark_safe 
choices = (mark_safe('£ 2,500'), ...) 

В качестве альтернативы вы можете также избежать использования побега последовательности, введя в символах непосредственно (эти лица не являются частью текущей спецификации HTML в любом случае, вы должны просто использовать юникод, а):

# -*- coding: utf-8 -*- 
choices = (u'£ 2,500', ...) 

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

+0

Ahhh, это точно (второй вариант). Большое спасибо за Вашу помощь. –

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