python - Django Bootstrap Date Picker 默认值/todayBtn 问题
问题描述
我使用 Django 和 Bootstrap 创建了一个日期选择器。但是,当单击输入字段右侧的日历字段时,日历会跳转到默认值:06/Fr/yyyy
。我尝试将todayBtn
属性设置为 True 但产生了错误。示例如下图所示:
我的模型.py:
class TimeInterval(models.Model):
time_interval = models.DateField()
表格.py:
from .models import TimeInterval
from bootstrap_datepicker_plus import DatePickerInput
class TimeIntervalForm(forms.ModelForm):
date = forms.DateField(
widget=DatePickerInput(
options={
"format": "mm/dd/yyyy",
# "todayHighlight": True,
# "todayBtn": True,
}
)
)
class Meta:
model = TimeInterval
fields = '__all__'
视图.py:
def datepicker_form_view(request):
return render(request, "datepicker_form.html", {
"time_interval_form": TimeIntervalForm(),
})
还有我的 HTML 文件:
{% load bootstrap4 %}
{% bootstrap_css %}
{% bootstrap_javascript jquery='full' %}
<form action="." method="POST">{% csrf_token %}
{% bootstrap_form time_interval_form %}
{{time_interval_form.media }}
<input type="submit" value="Submit">
</form>
我遇到了关于该属性的类似问题todayHighlight
,但 OP 使用了 JavaScript/jQuery,因此建议他使用 jQuery 选择添加该属性。我觉得在我的情况下,用一个<script>
部分和一个 jQuery 选择来扩展 HTML 代码只是为了让一个属性工作是一种过度杀伤——必须有一种更方便的方法来解决这个问题,我不知道。
解决方案
尝试这样的事情
date = forms.DateTimeField(error_messages={'invalid': 'Wrong date.'},
required=False, widget=DateInput(attrs={
'class': 'datepicker form-control input-sm ',
'data-trigger': 'focus'}))
或者
date = forms.DateTimeField(required=False,
widget=DateInput(attrs={'class': 'form-control input-sm'},
format=('%Y-%m-%d')))
推荐阅读
- ios - Firestore分页查询未返回所有结果
- asp.net - 如何在 TextMode="Date" 中首先插入“日”而不是月 - ASP.NET C#
- php - 如何在不知道键名的情况下回显关联数组的第一个键值
- java - 我的数组成员为空,即使它们已初始化
- javascript - JS 秒计数计时器通过单击按钮停止
- python - BigQuery GCP Python 集成
- typescript - 无法使用 Fetch TYPESCRIPT POST 多部分/表单数据
- kubernetes - CoreDNS 在获取端点、服务、命名空间时遇到问题
- javascript - 通过 WebSocket 将音频流式传输到 Web 音频播放器
- r - R,在 Linux CentOS 7 上发出“无法加载共享对象 cairo.so”