0

我的帖子

个人中心

设置

  发新话题
直入正题:
在django数据模型里有一张表,时间更新字段是这么写的  
update_time = models.DateTimeField(auto_now=True ,verbose_name='更新时间')
在视图函数中对这张表进行处理,主要是更新:
AssetInfo.objects.filter(asset_id=req_data['asset_id_field']).update(**update_filds_dict)

那么问题来了,通过这个视图函数更新数据表,数据表更新成功,但表中update_time 时间并没有变。
但使用django自带admin页面修改表格数据这个字段却更新了。


求解、求助大侠,谢谢!!!






复制内容到剪贴板
代码:
mywork_date = models.DateTimeField(verbose_name=u"提交时间")
web_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
other_mywork = models.mywork(
   ...

mywork_date=web_time,
   ...
)

other_mywork.save()
我是这么写的,你可以参考一下




本帖最后由 天掉大石头 于 2017-11-30 11:36 编辑
引用:
原帖由 天掉大石头 于 2017-11-30 11:34 发表
mywork_date = models.DateTimeField(verbose_name=u"提交时间")
web_time = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())
other_mywork = models.mywork(
   ...

mywork_date=web_time,
   ...
)

other ...
这样写就是主动去更新这个时间段,目的能够实现。不知道我理解的有没有问题,感谢你的回复!  但是我不是很明白,字段设置了auto_now=True后,当这张表有更新,时间不是也应该自动更新吗?  或者说,save()和update()更新是有区别的?



引用:
原帖由 Gary587 于 2017-11-30 12:15 发表

这样写就是主动去更新这个时间段,目的能够实现。不知道我理解的有没有问题,感谢你的回复!  但是我不是很明白,字段设置了auto_now=True后,当这张表有更新,时间不是也应该自动更新吗?  或者说,save()和update()更新是有区别的 ...
已经找到答案!一下文字复制自django官方文档:
DateField.auto_now¶
Automatically set the field to now every time the object is saved. Useful for “last-modified” timestamps. Note that the current date is always used; it’s not just a default value that you can override.

The field is only automatically updated when calling Model.save(). The field isn’t updated when making updates to other fields in other ways such as QuerySet.update(), though you can specify a custom value for the field in an update like that.



楼主怎么解决的?



引用:
原帖由 jamella001 于 2017-12-25 22:50 发表
楼主怎么解决的?
官方文档说调用Model.save()时,字段会自动更新。 当以其他方式更新字段如QuerySet.update()时,该字段不会更新.
解决方法其实很简单,使用Model.save()来更新;或者使用QuerySet.update(),更新内容里获取当前时间作为该字段的值。



引用:
原帖由 Gary587 于 2017-12-26 10:17 发表

官方文档说调用Model.save()时,字段会自动更新。 当以其他方式更新字段如QuerySet.update()时,该字段不会更新.
解决方法其实很简单,使用Model.save()来更新;或者使用QuerySet.update(),更新内容里获取当前时间作为该字 ...
学习了,谢谢楼主!



‹‹ 上一贴:分布式科学计算与docker   |   下一贴:关于wxpy,使用Python玩转微信的问题 ››
  发新话题
快速回复主题
关于我们 | 诚聘英才 | 联系我们 | 网站大事 | 友情链接 |意见反馈 | 网站地图
Copyright©2005-2017 51CTO.COM
本论坛言论纯属发布者个人意见,不代表51CTO网站立场!如有疑义,请与管理员联系:bbs@51cto.com