我似乎无法弄清楚如何在Django中正确处理以下情况:
我在模型中有一个日期范围,我将其存储为两个单独的字段,date_start并且date_end:
start_date = models.DateTimeField()
end_date = models.DateTimeField()
Run Code Online (Sandbox Code Playgroud)
在此模型的表单中,我想将其表示为一个字段,带有一个标签:
timespan = forms.Field(widget=widgets.SelectDateRangeWidget(), label="Date Range")
Run Code Online (Sandbox Code Playgroud)
就像现在一样,我扩展了MultiWidget以创建SelectDateRangeWidget:
class SelectDateRangeWidget(forms.MultiWidget):
...
Run Code Online (Sandbox Code Playgroud)
然后包含两个Date小部件.我想使用它,但随后将其清理为两个单独的模型字段,并保留将初始数据加载到表单字段的功能.是每次手动设置initial为这两个字段的值的唯一方法,可能__init__是在表单的功能中,还可以手动将其清理为这两个模型字段,或者是否有更清洁(可以这么说)的方式来执行此操作?