如何向 DJango 中的 DateTimeField 添加默认时间(但不是日期)?
我的模型上有一个 DateTimeField 。在该模型的表单中,我使用 SplitDateTimeWidget。我想让用户只输入一个日期,并让我的代码定义一个默认时间(如下午 2 点)(如果未输入)。
有没有一种简单的方法可以做到这一点?由于这是多个表单所需要的,因此我希望有一种可以立即应用于所有表单的方法,而不必为每个表单重新实现。
I have a DateTimeField on a model. In the forms for that model, I use the SplitDateTimeWidget. I want to enable users to enter just a date, and have my code define a default time (like 2 p.m.) if one is not entered.
Is there a simple way to do this? Since this is needed for multiple forms, I would like to have a way that can be applied to all of the forms at once, instead of having to be re-implemented for each one.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
您可以通过子类化 DateTimeField 并覆盖 clean() 方法来做到这一点。
You may be able to do this by subclassing DateTimeField and over-riding the clean() method.
我倾向于在模型 save() 方法中或调用 pre_save 信号时执行这些类型的默认值。
I tend to do these types of defaults in the models save() method or when the pre_save signal is called.