我的models.py:類型錯誤:不支持的操作類型爲 - : 'datetime.time' 和 'datetime.time'
class Attendancename(models.Model):
teacher_name = models.ForeignKey(Teachername, default='Ram')
date = models.DateField('Date', default=datetime.datetime.today)
intime = models.TimeField('IN-TIME', auto_now=True)
outtime = models.TimeField('OUT-TIME', auto_now=True)
def hours_conversion(self):
startdelta = datetime.timedelta(hours=self.intime.hours, minutes=self.intime.minutes, seconds=self.intime.seconds)
enddelta = datetime.timedelta(hours=self.outtime.hours, minutes=self.outtime.minutes, seconds=self.outtime.seconds)
return (enddelta-startdelta).seconds/3600
def __str__(self):
return "%s" %self.teacher_name
我views.py:
def add_atten(request):
if request.method == 'POST':
form = AttendancenameForm(request.POST)
if form.is_valid():
form.save()
return HttpResponseRedirect(reverse('student:listatten'))
else:
print(form.errors)
else:
form = AttendancenameForm()
return render(request, 'add_atten.html', {'form': form},)
我forms.py:
class AttendancenameForm(ModelForm):
intime = forms.TimeField(input_formats=('%H:%M',))
outtime = forms.TimeField(input_formats=('%H:%M',))
teacher_name = forms.ModelChoiceField(queryset=Teachername.objects.all())
class Meta:
model = Attendancename
fields = ('teacher_name', 'date', 'intime', 'outtime',)
其實我試圖計算的基礎上在我的模型的'intime'
和'outtime'
差總小時數s.py文件,但它會超過erroe。我想我在做語法錯誤。任何人都可以請告訴我什麼是正確的語法或方法來做到這一點? 任何機構請建議我該怎麼做才能修復它?
我不知道你爲什麼要把它存儲在一個字段中,當它從進出時間進行平凡計算時。最好有一個方法按需返回它。 –
那麼我該如何在我的模板中展示它?假設我已經做出了這樣的功能,那麼我怎樣才能在我的模板中向用戶展示它? –
完全一樣。如果它是模型上的方法並且不需要參數,則可以直接從模板中調用它。 –