Я на django 1.4.Django шаблон фильтра дата не работает
Передача переменной MY_VAR
в шаблон home.html.
Показанный код упрощен. Вот urls.py
import home
urlpatterns = patterns('',
# homepage
url(r'^/?$', home.Home.as_view(), name='home'),
)
И вид home.py
from django.conf import settings
class Home(TemplateView):
""" this view serves the home template """
template_name = 'home.html'
def get_context_data(self, *args, **kwargs):
data = {
'MY_VAR': setting.MY_VAR # where MY_VAR defined in settings.py is a string '2014-12-31'
}
retun data
У меня есть переменная шаблона, я затем встраивать в ЯШ:
<!-- source code of home.html -->
<script type="text/javascript" charset="utf-8">
var myVar = '{{ MY_VAR }}'
</script>
MY_VAR
находится в форме '2014-12-31'
. Если я не использую любой фильтр, то все работает, а это означает, что выше кусок кода будет производить это:
<!-- computed home.html -->
<script type="text/javascript" charset="utf-8">
var myVar = "2014-12-31";
</script>
, но я хотел бы другое форматирование даты, так что, если я использую date
фильтр, как это
var myVar = '{{ MY_VAR|date }}'
// or
var myVar = "{{ MY_VAR|date:'d-m-Y' }}"
Я всегда получаю пустую строку var myVar = ''
независимо от того, что я перехожу к фильтру даты. Также по умолчанию {{ MY_VAR|date }}
без какого-либо параметра форматирования возвращает пустую строку.
Не могли бы вы опубликовать, как вы передаете переменную из views.py? Является ли исходная переменная строкой ou datetime? – RafaelC
Я отредактировал вопрос (дважды, я забыл кусок кода) – Leonardo