【问题标题】:Django/MySQL time datatypeDjango/MySQL 时间数据类型
【发布时间】:2012-09-30 08:09:53
【问题描述】:

我正在使用 Django 从已经创建并被其他人使用的现有 mysql 数据库导入。我正在使用:

python manage.py inspectdb > models.py

我的模型中的类如下:

class Funciones(models.Model):
    idfuncion = models.IntegerField(primary_key=True)
    idpelicula = models.ForeignKey(Peliculas, db_column='idpelicula')
    idcine = models.ForeignKey(Cines, db_column='idcine')
    hora = models.TextField() # This field type is a guess.
    tipo_3d = models.IntegerField(null=True, db_column=u'3d', blank=True) # Field renamed
    xd = models.IntegerField(null=True, blank=True)
    gtmax = models.IntegerField(null=True, blank=True)
    vip = models.IntegerField(null=True, blank=True)
    idioma = models.CharField(max_length=33)
    idciudad = models.ForeignKey(Ciudades, db_column='idciudad')
    class Meta:
        db_table = u'funciones'

现在这个属性: hora = models.TextField() # 这个字段类型是猜测

对应于 MYSQL 中的一个 time 数据类型。 现在,由于我无法更改 MYSQL 中的数据类型,因为其他人已经从另一个应用程序创建了许多对数据库的查询,我想知道我应该在我的 django 模型中使用的适当的相应 django 数据类型。 我在想 DateTimeField 但是我应该在写入数据库之前以某种方式截断日期部分。

有什么想法吗?

谢谢

编辑:

正如佩德罗所指出的:

Django 实际上有一个 TimeField,为什么不使用它呢? ——佩德罗·罗马诺

【问题讨论】:

  • Django 实际上有一个TimeField,为什么不用它呢?
  • 糟糕,我的错,好像我错过了 TimeField。谢谢!

标签: python mysql django


【解决方案1】:

您可以使用 Timedelta 对象来表示“经过的时间”,使用此 https://djangosnippets.org/snippets/1060/

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-07-14
    • 2018-08-30
    • 2011-05-28
    • 1970-01-01
    • 2019-03-20
    • 1970-01-01
    • 2017-12-31
    • 1970-01-01
    相关资源
    最近更新 更多