Python Django:如何正确呈现DateTimeRangeField的SplitDateTimeWidget
django的在线材料(文档、代码)(专为博士后准备的)缺乏。我试图覆盖的小部件,但无法让它显示2个漂亮的日期时间输入使用(开始日期时间,结束日期时间)为我的字段。我已经决定重写Python Django:如何正确呈现DateTimeRangeField的SplitDateTimeWidget,python,django,django-forms,django-admin,django-widget,Python,Django,Django Forms,Django Admin,Django Widget,django的在线材料(文档、代码)(专为博士后准备的)缺乏。我试图覆盖的小部件,但无法让它显示2个漂亮的日期时间输入使用(开始日期时间,结束日期时间)为我的字段。我已经决定重写type属性并获得以下okayish输出,没有这个,它只是简单的type=“text” 当前行为: 预期行为:如下,但其中有两种 My models.py from django.db import models from django.contrib.postgres.fields import DateTimeR
type
属性并获得以下okayish输出,没有这个,它只是简单的type=“text”
当前行为:
预期行为:如下,但其中有两种
My models.py
from django.db import models
from django.contrib.postgres.fields import DateTimeRangeField
class MyModel(models.Model):
...
datetimerange = DateTimeRangeField()
...
from django import forms
from django.contrib import admin
from django.contrib.postgres.forms.ranges import RangeWidget, DateTimeRangeField
class MyModelAdminForm(forms.ModelForm):
class Meta:
model = models.MyModel
fields = "__all__"
widgets = {
"datetimerange": RangeWidget(
forms.SplitDateTimeWidget(
date_attrs={"type": "date"}, time_attrs={"type": "time"},
),
)
}
@admin.register(models.MyModel)
class MyModelAdmin(admin.ModelAdmin):
form = MyModelAdminForm
我的管理员py
from django.db import models
from django.contrib.postgres.fields import DateTimeRangeField
class MyModel(models.Model):
...
datetimerange = DateTimeRangeField()
...
from django import forms
from django.contrib import admin
from django.contrib.postgres.forms.ranges import RangeWidget, DateTimeRangeField
class MyModelAdminForm(forms.ModelForm):
class Meta:
model = models.MyModel
fields = "__all__"
widgets = {
"datetimerange": RangeWidget(
forms.SplitDateTimeWidget(
date_attrs={"type": "date"}, time_attrs={"type": "time"},
),
)
}
@admin.register(models.MyModel)
class MyModelAdmin(admin.ModelAdmin):
form = MyModelAdminForm
我尝试使用(继承)默认字段
DateTimeRangeField
,但也没有成功。遇到同样的问题,您找到解决方案了吗?我只是得到了空标签…@ÖzerS。由于这个原因和其他原因,我最终将字段拆分为两个日期时间。但是无论如何,上面的方法仍然有效,尽管没有为from和to datetime分别设置漂亮的日期和时间字段。哈哈,我做了完全相同的,很好的开始日期和结束日期,这要容易得多。我真的尝试了很多,但是对DateTimeRangeField的支持并不存在。我认为你可以通过自定义小部件等来实现它,但最终你会得到比简单的开始/结束更多的代码。同样的问题,你找到解决方案了吗?我只是得到了空标签…@ÖzerS。由于这个原因和其他原因,我最终将字段拆分为两个日期时间。但是无论如何,上面的方法仍然有效,尽管没有为from和to datetime分别设置漂亮的日期和时间字段。哈哈,我做了完全相同的,很好的开始日期和结束日期,这要容易得多。我真的尝试了很多,但是对DateTimeRangeField的支持并不存在。我认为您可以通过自定义小部件等实现它,但最终您将拥有比简单的开始/结束更多的代码。