Найти - Пользователи
Полная версия: формат времени в моделях
Начало » Django » формат времени в моделях
1
sonniy
есть уже действующая боевая база и в ней поле date_create
если models.DateField()
то по умолчанию выводит так :
Oct. 8, 2010, 2:37 p.m.
я хочу так:
date_create = models.DateField(input_format='%Y-%m-%d %H:%M:%S')
это вызывает ошибку :
TypeError: __init__() got an unexpected keyword argument 'input_format'
ну прям жизнь не справедлива :(, можно это как то исправить или есть другой способ задания формата даты ?
svas
Выводит в шаблоне или где?
dissdoc
Там же черным по белому написано, что нет такого параметра.
Есть параметр input_formats
sonniy
dissdoc
Там же черным по белому написано, что нет такого параметра.
Есть параметр input_formats
перевести то я перевел , а вот как этот самый input_formats сделать я хз, вот и решил у большого общества спросить…
TypeError: __init__() got an unexpected keyword argument 'input_formats'
svas
Выводит в шаблоне или где?
выводит на сервере
Validating models...
Unhandled exception in thread started by <function inner_run at 0xddc2a8>
Traceback (most recent call last):
File "/usr/lib/python2.6/site-packages/django/core/management/commands/runserver.py", line 48, in inner_run
self.validate(display_num_errors=True)
File "/usr/lib/python2.6/site-packages/django/core/management/base.py", line 249, in validate
num_errors = get_validation_errors(s, app)
File "/usr/lib/python2.6/site-packages/django/core/management/validation.py", line 28, in get_validation_errors
for (app_name, error) in get_app_errors().items():
File "/usr/lib/python2.6/site-packages/django/db/models/loading.py", line 146, in get_app_errors
self._populate()
File "/usr/lib/python2.6/site-packages/django/db/models/loading.py", line 61, in _populate
self.load_app(app_name, True)
File "/usr/lib/python2.6/site-packages/django/db/models/loading.py", line 78, in load_app
models = import_module('.models', app_name)
File "/usr/lib/python2.6/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/var/www/html/бла бла бла/models.py", line 25, in <module>
class actions(models.Model):
File "/var/www/htmlбла бла бла/models.py", line 26, in actions
date_create = models.DateField(input_formats='%Y-%m-%d %H:%M:%S')
File "/usr/lib/python2.6/site-packages/django/db/models/fields/__init__.py", line 597, in __init__
Field.__init__(self, verbose_name, name, **kwargs)
TypeError: __init__() got an unexpected keyword argument 'input_formats'
sonniy
проблема решена :
делаем так
date_create = models.DateField()
потом идем в шаблон и делаем так
{{date_create|date:"d-m-Y G:i:s"}}
и получаем
08-10-2010 14:37:14
то есть формат выводимой информации (в этом случае) задаем в самом шаблоне , а не в коде
dissdoc
Это не решение проблемы ;) Это не хотите разобраться в проблеме и нашли способ попроще.
fth
dissdoc
Это именно решение, причём правильное, ибо отображение должно управляться шаблонами, а не моделью.
Ferroman
Читайте документацию господа. Параметр input_formats есть у полей формы, а не модели.
Что, кстати, легко понять из названия переменной.
sonniy
собственно ответ и нашелся именно в доках, в самом низу этой страницы
Ferroman
Это не доки. Доки тут: http://docs.djangoproject.com/en/1.2/
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB