我尝试了无数次使用TIME and DATE
保存和DateTimeField
的不同方法,但是DJANGO2.1不断抛出模板错误enter a valid date/time
class Party(models.Model):
name = models.CharField(max_length=50)
date = models.DateTimeField()
class PartyForm(forms.ModelForm):
name = forms.CharField()
date = forms.DateTimeField(widget=forms.widgets.DateTimeInput(format=['%Y-%m-%d %H:%M'],
attrs={'class':'myDateClass', 'type':'datetime-local'}))
class Meta:
model = Party
fields = ['name', 'date']
from .models import Party
from .forms import PartyForm
def index(request):
if request.method == 'POST':
form = PartyForm(request.POST)
if form.is_valid():
form.save()
else:
form = PartyForm()
context = {'form': form}
return render(request, 'core/index.html', context)
<div class="container mt-5 ml-5">
<form method="POST">
{% csrf_token %}
{{ form.as_p }}
<input class="btn btn-info" type="submit" value="submit">
</form>
</div>
TIME_ZONE = 'America/Chicago'
USE_L10N = False
此外,当我尝试在下面使用input_formats
时:
date = forms.DateTimeField(widget=forms.widgets.DateTimeInput(input_formats=['%Y-%m-%d %H:%M'],
attrs={'class':'myDateClass', 'type':'datetime-local'}))
终端抛出以下错误:
File "/Users/macadmin/Documents/Django_fun4/date_and_time/date_time/core/forms.py", line 30, in PartyForm
attrs={'class':'myDateClass', 'type':'datetime-local'}))
TypeError: __init__() got an unexpected keyword argument 'input_formats'
当我尝试仅保存DATE时。下面的配置工作。
我将'type'
的值更改为'date'
date = forms.DateTimeField(widget=forms.DateTimeInput(format=('%d-%m-%Y %H:%M'),attrs={'class':'myDateClass', 'type':'date'}))
但是当我尝试同时保存DATE和TIME时,'type':'datetime-local'
django模板会抛出错误ENTER A VALID DATE / TIME
有人可以帮我弄清楚如何保存时间和日期吗?
谢谢您的帮助。
答案 0 :(得分:2)
format
是一个字符串参数,请尝试:
date = forms.DateTimeField(widget=forms.widgets.DateTimeInput(format='%Y-%m-%d %H:%M', attrs={'class':'myDateClass', 'type':'datetime-local'}))
或完全不提供任何格式,Django将尝试应用these中的某些格式。