我使用的是mysql 5.7db和django1.8,据我所知,它们都支持毫秒。我可以以HH:MM的形式输入时间:不锈钢fff通过mysql进入我的数据库。(例如00:05:45:100)
当我打开django的管理页面时,它会正确地显示时间(例如00:05:45:100000),但是如果我通过管理窗体输入时间并按“保存”,时间就会变为例如00:05:45:000000,因此毫秒不会按我的感觉保存
为什么会这样?有没有办法改变它? 谢谢你
在管理员py
from django.contrib import admin
from items.models import Maximum
from django import forms
class MaximumAdminForm(forms.ModelForm):
def __init__(self, *arg, **kwargs):
super(MaximumAdminForm, self).__init__(*arg, **kwargs)
self.fields['time_point'] = forms.TimeField(widget=forms.TimeInput(format="%H:%M:%S.%f"))
class Meta:
model = Maximum
fields = ['item', 'time_point',]
class MaximumAdmin(admin.ModelAdmin):
form = MaximumAdminForm
def milliseconds(self, obj):
return obj.time_point.strftime("%H:%M:%S.%f")[0:12]
milliseconds.short_description = 'time point'
list_display = ('id', 'milliseconds',)
admin.site.register(Maximum, MaximumAdmin)
django1.7的下一个稳定版本currently supports MySQL 5.0.3 and higher,但并非所有这些版本都支持微秒。django1.8目前是不稳定的主版本,其支持的版本和发布日期尚未确定。因此,后端将在^{} 内截断微秒:
这在受支持的数据库文档的the DateTime fields section下注明:
相关问题 更多 >
编程相关推荐