Mic*_*isy 38 django datepicker
我喜欢Thauber Schedule datepicker,但它是一个日期时间选择器,我不能只做日期.任何有关如何与Django日期表单字段集成的说明的漂亮日期选择器的建议?
avi*_*avi 33
以下是我的工作,完全没有外部依赖:
models.py:
from django.db import models
class Promise(models):
title = models.CharField(max_length=300)
description = models.TextField(blank=True)
made_on = models.DateField()
Run Code Online (Sandbox Code Playgroud)
forms.py:
from django import forms
from django.forms import ModelForm
from .models import Promise
class DateInput(forms.DateInput):
input_type = 'date'
class PromiseForm(ModelForm):
class Meta:
model = Promise
fields = ['title', 'description', 'made_on']
widgets = {
'made_on': DateInput(),
}
Run Code Online (Sandbox Code Playgroud)
我的看法:
class PromiseCreateView(CreateView):
model = Promise
form_class = PromiseForm
Run Code Online (Sandbox Code Playgroud)
我的模板:
<form action="" method="post">{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Create" />
</form>
Run Code Online (Sandbox Code Playgroud)
日期选择器如下所示:
Ali*_*Ali 19
您也可以在模板中使用Jquery.jquery DateTime Picker允许每个自定义.
http://jqueryui.com/demos/datepicker/
Ten*_*Ten 18
Django的TextInput小部件(及其所有子类)支持指定type属性来设置表单类型.
您可以使用它将输入类型设置为date(W3C规范),例如以下列方式:
date = fields.DateField(widget=forms.widgets.DateInput(attrs={'type': 'date'}))
Run Code Online (Sandbox Code Playgroud)
小智 9
avi 的解决方案也可以在不使用额外的 django 输入类的情况下完成:
class PromiseForm(ModelForm):
class Meta:
model = Promise
fields = ['title', 'description', 'made_on']
widgets = {
'made_on': DateInput(attrs={'type': 'date'}),
}
Run Code Online (Sandbox Code Playgroud)
说到日期选择器,我的选择是Bootstrap Datepicker.您可以使用django-bootstrap-datepicker-plus在django应用程序中实现它,它适用于较新和较旧的DJango版本.我维护存储库并测试了它在Django版本工作1.8,1.10,1.11和2.0.4.
设置非常简单.你只需安装它.
pip install django-bootstrap-datepicker-plus
Run Code Online (Sandbox Code Playgroud)
在forms.py文件中导入小部件
from bootstrap_datepicker_plus import DatePickerInput
Run Code Online (Sandbox Code Playgroud)
将小部件添加到日期字段
class ToDoForm(forms.Form):
date = forms.DateField(
widget=DatePickerInput(
options={
"format": "mm/dd/yyyy",
"autoclose": True
}
)
)
Run Code Online (Sandbox Code Playgroud)
有关详细说明,请参见django-bootstrap-datepicker-plus Github Page.
免责声明:此小部件包现在由我拥有和维护.对于任何问题,请随时在Github页面上打开问题.
小智 5
作为编码新手,我使用了这个例子,因为它很容易。
<form method="POST">{% csrf_token %}
<p>Start date<input type = 'date' name='start_date' ></p>
<p>End date<input type = 'date' name='end_date' ></p>
<button type="submit">Submit</button>
</form>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
64549 次 |
| 最近记录: |