Django日期时间查询返回None

时间:2015-05-23 04:09:59

标签: python django

我的模型如下:

from jsonfield import JSONField
from django.db import models



class user_table(models.Model):
    #The Facebook unique user ID
    facebook_UUID=models.CharField(max_length=200, unique=True)
    #Apple Push Notification token updated by, the logIn API.
    #APNS is deleted after if the user logs out.
    apns_token=models.CharField(max_length=200)
    last_seen_lat=models.CharField(max_length=200)
    last_seen_lon=models.CharField(max_length=200)
    #A dump of the last Facebook "Me" JSON Object {first_name, last_name, bio, birthday, gender,
    #  picture.heaight(400).width(400)}
    facebook_details_json=JSONField()
    #Date of last web service request by this user. Used for computing last seen.


    last_request_datetime=models.DateTimeField(auto_now=True)


    #A boolean indicating if the user is logged in, or the user has logged out. This
    #boolean is initiated as true. It is only set to false when the user explicitly logs out
    #utilizing the sign out API
    is_logged_in=models.BooleanField(default=True)

当我查询last_request_datetime时,我将得到None:

在[0]

user_table.objects.get(pk=1).__dict__

OUT [0]

{'_state': <django.db.models.base.ModelState at 0x53b7930>,
 'apns_token': u'Token123',
 'facebook_UUID': u'Lozan',
 'facebook_details_json': {u'facebook': u'Lozan'},
 'id': 1,
 'is_logged_in': True,
 'last_request_datetime': None,
 'last_seen_lat': u'12.12',
 'last_seen_lon': u'12.12'}

我明显使用了所有其他领域的假人。我尝试更改字段名称,但那不是它。我正在使用SQLite。我试过jupyter和终端。当我在PyCharm中查看数据库时,我可以在那里看到epoch条目。所以创作确实有效。 Field类型是PyCharm数据库资源管理器中的TEXT。

1 个答案:

答案 0 :(得分:0)

这有效:     当我启动datetime字段时,有一个默认值,这是一个类似epoch的格式。当我更新该字段一次,那么它在PyCharm的数据库浏览器和控制台中都能很好地工作。