django - 日期时间字段参数
问题描述
class Question(models.Model):
question_text = models.CharField(max_length=200)
pub_date = models.DateTimeField('date published')
def __str__(self):
return self.question_text
def was_published_recently(self):
return self.pub_date >= timezone.now() - datetime.timedelta(days=1)
这是来自 Django 官方教程。models.DateTimeField('date published')
为什么有一个字符串作为参数?根据文档,似乎 DateTimeField 不接受字符串参数。谢谢您的帮助。
解决方案
除了 ForeignKey、ManyToManyField 和 OneToOneField 之外,每个字段类型都采用一个可选的第一个位置参数——一个详细的名称。如果没有给出详细名称,Django 将使用字段的属性名称自动创建它,将下划线转换为空格。关联
class DateTimeField(DateField):
......
class DateField(DateTimeCheckMixin, Field):
....
def __init__(self, verbose_name=None, name=None, auto_now=False,
auto_now_add=False, **kwargs):
您可以在此处详细查看 DateTimeField 类的实现。
推荐阅读
- javascript - 转移到带有 Html 标签的请求页面
- python - 如何在 Airflow 中使用执行日期创建路径?
- spring-boot - Camel rest API 提供动态下载
- vuejs2 - 未捕获(承诺中)DOMException:处理 ICE 候选 WebRTC RTCIceCandidate 时出错
- cordova - 在 ionic 版本 1、节点版本 10.8.0 中运行“ionic cordova build android --release --verbose”命令时出错
- javascript - 带有通配符的 Ajax GET 请求
- eclipse - Eclipse 启动配置文件 - 询问用户提示
- azure - 如何在 Azure Web App 中创建启动任务(或安装依赖项)?
- spring - 无法连接到 Spring Cloud + Hystrix + Turbine 中的 Command Metric Stream - MIME 类型(“text/plain”)不是“text/event-stream”
- javascript - Javascript标签在spring boot上不起作用