Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Django
  • » подскажите почему не работают фильтры для отображения datetime [RSS Feed]

#1 Май 13, 2008 07:16:55

qman
От:
Зарегистрирован: 2007-07-02
Сообщения: 444
Репутация: +  0  -
Профиль   Отправить e-mail  

подскажите почему не работают фильтры для отображения datetime

class measuring_datetime(models.Model):
dt_value = models.DateTimeField(null=False, unique=True)
def __unicode__(self):
return str(self.dt_value)
class Meta:
ordering = ["dt_value"]
class Admin:
pass
в представлении
dt_value = measuring_datetime.objects.latest('dt_value')
...
return render_to_response('show_weather.html', {'datetime_measure': dt_value
, 'id': id_last
, 'measuring_value': measuring_value_last
, 'sensor': sensor_list
})
код шаблона
{{ datetime_measure.hour }}
час не извлекает
или такой шаблон
код
{{ datetime_measure|date:"m Y" }}
ошибка
'measuring_datetime' object has no attribute ‘month’
в консоли
print dt_value 
2008-04-14 23:59:57
подскажите почему не работают фильтры для отображения datetime



Офлайн

#2 Май 13, 2008 08:42:47

playpauseandstop
От:
Зарегистрирован: 2007-10-31
Сообщения: 77
Репутация: +  0  -
Профиль   Отправить e-mail  

подскажите почему не работают фильтры для отображения datetime

Django documentation
latest(field_name=None)
Returns the latest object in the table, by date, using the field_name provided as the date field.
т.е.
dt_value = measuring_datetime.objects.latest('dt_value').dt_value



Офлайн

#3 Май 13, 2008 09:25:04

qman
От:
Зарегистрирован: 2007-07-02
Сообщения: 444
Репутация: +  0  -
Профиль   Отправить e-mail  

подскажите почему не работают фильтры для отображения datetime

playpauseandstop
dt_value = measuring_datetime.objects.latest('dt_value').dt_value
не понял а зачем в конце “.dt_value”? куда эту строку вписать? В представление?
у меня дата извлекается из БД.
мне нужно в шаблоне задать datetime формат:
“ДЕНЬ/МЕСЯЦ/ГОД ”



Офлайн

#4 Май 13, 2008 09:36:04

Александр Кошелев
От: Москва
Зарегистрирован: 2007-02-03
Сообщения: 1724
Репутация: +  2  -
Профиль   Отправить e-mail  

подскажите почему не работают фильтры для отображения datetime

qman
у меня дата извлекается из БД.
latest возвращает объект модели, а не дату. Об этом вамplaypauseandstop любезно сказал.



Офлайн

#5 Май 13, 2008 11:24:09

qman
От:
Зарегистрирован: 2007-07-02
Сообщения: 444
Репутация: +  0  -
Профиль   Отправить e-mail  

подскажите почему не работают фильтры для отображения datetime

ИЗВИНЯЮСЬ за свою тупость



Офлайн

#6 Март 17, 2010 20:51:20

qman
От:
Зарегистрирован: 2007-07-02
Сообщения: 444
Репутация: +  0  -
Профиль   Отправить e-mail  

подскажите почему не работают фильтры для отображения datetime

Подскажите а что вызывает ошибку в таком случае?
Описание модели

class measuring_datetime(models.Model):
dt_value = models.DateTimeField(null=False, unique=True)
def __unicode__(self):
return str(self.dt_value)
в представлении процедура
def last_measured_value(request):
datetime_val = measuring_value.objects.order_by('-id')[0].dt_value
print datetime_val
return render_to_response('last_measured_value.html', \
{'datetime_val': datetime_val})
в шаблоне
<p> Время{{ datetime_val|date:"D d M Y"}} </p>
Получаю ошибку
TemplateSyntaxError at .....
Caught an exception while rendering: 'dict' object has no attribute 'autoescape'
Original Traceback (most recent call last):
File "C:\Python25\lib\site-packages\django-1.1.1-py2.5.egg\django\template\debug.py", line 71, in render_node
result = node.render(context)
File "C:\Python25\lib\site-packages\django-1.1.1-py2.5.egg\django\template\debug.py", line 94, in render
if (context.autoescape and not isinstance(output, SafeData)) or isinstance(output, EscapeData):
AttributeError: 'dict' object has no attribute 'autoescape'
Судя по ошибке понимаю что datetime_val переменная не имеет атрибута ‘autoescape’, но в документации вроде такой же код и работает.
Заранее спасибо.



Отредактировано (Март 17, 2010 20:54:13)

Офлайн

#7 Март 18, 2010 21:14:28

vaxXxa
От: Kyiv, Ukraine
Зарегистрирован: 2009-06-16
Сообщения: 278
Репутация: +  0  -
Профиль   Отправить e-mail  

подскажите почему не работают фильтры для отображения datetime

в datetime_val точно что-то есть??? может там пусто?



Офлайн

#8 Март 20, 2010 18:20:51

qman
От:
Зарегистрирован: 2007-07-02
Сообщения: 444
Репутация: +  0  -
Профиль   Отправить e-mail  

подскажите почему не работают фильтры для отображения datetime

приношу извинения в коде сам ступил.



Офлайн

  • Начало
  • » Django
  • » подскажите почему не работают фильтры для отображения datetime[RSS Feed]

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version