django - 模型表单中的更新日期时间字段仅显示纯文本而不是 datepicker Django
问题描述
我正在尝试更新我的DateTimeField
字段,但它只显示数字的纯文本而不是日期选择器
class MyModel(models.Model):
date= models.DateTimeField(default=timezone.now)
#others
表格.py
class UpdateMyModelForm(forms.ModelForm):
date= forms.DateTimeField(required=True,input_formats=['%Y-%m-%dT%H:%M','%Y-%m-%dT%H:M%Z'],widget=forms.DateTimeInput(attrs={'type':'datetime'}))
class Meta:
model = MyModel
fields = ['date','others]
当我使用forms.DateTimeField
它时,它不会显示我之前选择的上一个日期!当我删除forms.DateTimeField
它时只显示纯文本type=text
我也尝试使用
class DateInput(forms.DateInput):
input_type = 'date'
但它只显示Y-m-d
:年月日我还必须显示小时和分钟?请问我还有什么需要改变的吗
解决方案
首先,我建议你
date = forms.DateTimeInput(attrs={'type': 'datetime-local'})
在你的 forms.py中使用
其次,如果您想查看上一个日期,请在模板中添加一个日期过滤器。
例如:
<span>Date:</span><input class="mt-4 ml-4" type="datetime-local" name="date" value="{{form.date.value | date:'c'}}" id="id_deadline_date">
有帮助的日期过滤器是| date:'c'
在这些更改之后,我认为您将能够看到以前的日期。我已经解释了为什么你应该在这个链接
中使用日期过滤器。
推荐阅读
- azure - 我没有在我的 azure 门户上看到所有 azure 资源
- html - Vue/HTML5/Safari - 视频不能在 safari 但 Chrome 上显示
- flutter - DropDownMenuItem 文本很大并带有双下划线
- django-models - 在 django 中解析 JSON 并将值保存到数据库
- angular - Angular Universal 页面在 SSR 上加载两次
- python - Python:将变量注释为 TypedDict 的键
- loops - pyspark 遍历窗口计算累积最大值
- python - 创建 Python 路径
- java - 尝试将 AutoML Vision 客户端与 Google Cloud Platform 一起使用时出现 DEADLINE_EXCEEDED
- reactjs - React MaterialUI:createSvgIcon 不是函数