Найти - Пользователи
Полная версия: формат DateField не соответствует input_formats при редактировании
Начало » Django » формат DateField не соответствует input_formats при редактировании
1
qman
Всем привет,
есть форма
class BookForm(ModelForm):    
publication_date = forms.DateField(input_formats=('%d/%m/%Y',),)
class Meta:
model = Book
Когда ввожу новую книгу то дата вводиться в формате ‘%d/%m/%Y’.
Когда редактирую существующую книгу, то дата отображается в формате %Y-%m-d, но чтобы сохранить изменения требуется опять переписать дату в формате ‘%d/%m/%Y’. Мне нужно чтобы в форме для редактирования введенной книги дата отображалась в формате ‘%d/%m/%Y’
Код представления
def book_add (request, book_id = None):
if book_id:
book = get_object_or_404(Book, pk=book_id)
if request.method == 'POST':
form = BookForm(request.POST, instance=book)
if form.is_valid():
form.save()
return HttpResponseRedirect('/book/')
else:
form = BookForm(instance=book)
else:
if request.method == 'POST':
form = BookForm(request.POST)
if form.is_valid():
new_book = form.save()
return HttpResponseRedirect('/book/')
else:
form = BookForm()
return render_to_response('books/book_form.html', {'form': form})

def book_edit (request, book_id):
return book_add(request, book_id)
Код шаблона
<html>
<head>
<title></title>
</head>
<body>
<h1>Книга</h1>
{% if form.errors %}
<p style="color: red;">
Please correct the error{{ form.errors|pluralize }} below.
</p>
{% endif %}

<form action="" method="post">
<table>
{{ form.as_table }}
</table>
<input type="submit" value="Submit">
</form>
</body>
</html>
qman
хочу файлы прикрепить, но они почему то не прикрепляются
P.S. броузер firefox
qman
Файл добавления новой книги
http://xmages.net/show.php/702554_addnewbook.JPG.html
Файл редактирования существующей книги
http://xmages.net/show.php/702561_editbook.JPG.html
на рисунках видно, что формат даты разный!
poltergeist
publication_date = forms.DateField(input_formats=('%d/%m/%Y',), widget=forms.DateInput(format='%d/%m/%Y'))
qman
poltergeist
publication_date = forms.DateField(input_formats=('%d/%m/%Y',), widget=forms.DateInput(format='%d/%m/%Y'))
спасибо
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