【问题标题】:django models timefield o min:sec formatdjango 模型 timefield o min:sec 格式
【发布时间】:2017-05-24 07:46:28
【问题描述】:

如何将 django 模型中的 TimeField 格式设置为 [min:sec] 类似于音轨?

class Song(models.Model):
    title = models.CharField(max_length=128)
    duration = models.TimeField(null=True)

【问题讨论】:

  • 将持续时间以秒为单位存储为整数不是更有意义吗?然后在渲染时将其格式化为您需要的任何内容(例如使用模板标签)?
  • 当然会,这只是我正在学习的课程的一个练习,我应该在这个课程中使用 TimeField。
  • 这听起来很奇怪,例如有声读物可能需要超过 24 小时。顺便说一句,模型不会格式化,您在视图层中执行的操作...
  • 好的,现在我知道了。我需要的是:models.DurationField

标签: django django-models timefield


【解决方案1】:

在应用程序中创建 form.py 并在视图中继承此表单,如果您想在 admin 中使用相同的概念,那么也可以在 django admin 中继承

from django import forms
from .models import Song
class SongForm(forms.ModelForm):
    duration = forms.TimeField(widget=forms.TimeInput(format='%H:%M'))
    class Meta:
        model = Song

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-10-26
    • 2013-02-13
    • 2011-04-09
    • 2014-01-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多