0
Django的新手在這裏。提交表單時,即使我提交數據獲取「可能不空」的錯誤。 DateTime字段
我有一個DateTimeField字段不能是空的一種形式,但儘管給人一種時間和日期,我得到一個錯誤。
錯誤消息:
IntegrityError at /app/new_action/
app_action.event_time may not be NULL
樣品輸入:
02/08/2014 15:00
models.py
class Action(models.Model):
name = models.CharField(max_length=200)
description = models.CharField(max_length=200)
location = models.CharField(max_length=200)
event_time = models.DateTimeField()
created_by = models.ForeignKey(UserProfile)
last_modified = models.DateTimeField('Last Modified')
def __unicode__(self):
return self.name
forms.py
class ActionForm(forms.ModelForm):
event_time = forms.DateTimeField(input_formats=['%m/%d/%Y %H:%M'])
class Meta:
model = Action
fields = ('name','description','location',)
views.py
@login_required
def new_action(request):
context = RequestContext(request)
if request.method == 'POST':
form = ActionForm(request.POST)
if form.is_valid():
form.save(commit=True)
#note = form.save(commit=True)
#note.created_by = profile.id
#note.save()
return index(request)
else:
print form.errors
else:
form = ActionForm()
額外注:如果可能的話,我想保持這種輸入格式。爲了測試的緣故,我將字段回DateTimeField字段,但如果我能得到這個固定的,我會回去使用this,產生這種輸入格式。
嘗試在Meta類中添加「EVENT_TIME」到字段列表(也將其轉換爲一個列表,因爲你有一個元組) – Alvaro
這樣做。正如我所提到的,我是一個Django newb,那麼這個改變究竟做了什麼? – dakisbac
使用Meta.fields,您僅暴露列表中的字段。因此,您確切知道表單旨在處理哪些字段。在你的情況下,列表中缺少字段'event_time'。 –