Javascript Django:ModelForm中的日期选择器
在模型中,我有两个字段,如Javascript Django:ModelForm中的日期选择器,javascript,python,jquery,django,Javascript,Python,Jquery,Django,在模型中,我有两个字段,如 from_date = models.DateField() to_date = models.DateField() 在我定义为 widgets = { 'from_date' : DateInput(attrs={'class': 'datepicker'}), 'to_date' : DateInput(attrs={'class': 'datepicker'}), } 在基本html中
from_date = models.DateField()
to_date = models.DateField()
在我定义为
widgets = {
'from_date' : DateInput(attrs={'class': 'datepicker'}),
'to_date' : DateInput(attrs={'class': 'datepicker'}),
}
在基本html中,我将datepicker的jQuery代码编写为
<script>
$(document).ready(function() {
$('.datepicker').datepicker(
{
minDate : 0,
beforeShowDay : $.datepicker.noWeekends
}
);
});
</script>
我的表格.py
class LeaveRequestForm(ModelForm):
class Meta:
fields = ("name", "employee_ID" ,"department", "designation", "type_of_leave", "from_date", "to_date", "reporting_manager", "reason")
model = Leave
widgets = {
'name': Textarea(attrs = {'cols' : 20, 'rows': 1}),
'employee_ID' : Textarea(attrs = {'cols' : 20, 'rows': 1}),
'from_date' : DateInput(attrs={'class': 'datepicker'}),
'to_date' : DateInput(attrs={'class': 'datepicker'}),
'reason_reject' : forms.HiddenInput()
}
试试这个
var from_date = models.DateField();//Your From Date
var to_date = models.DateField();//Your To Date
if(new Date(to_date) > new Date(from_date))//This Condition Compares both Dates
{
//Your Code
}
有关更多详细信息,请参阅
var from_date = models.DateField();//Your From Date
var to_date = models.DateField();//Your To Date
if(new Date(to_date) > new Date(from_date))//This Condition Compares both Dates
{
//Your Code
}
有关更多详细信息,请参考以下创建Django模型
class Request(models.Model):
from_date = models.DateField(default = timezone.now, blank = True)
to_date = models.DateField(default = timezone.now, blank = True)
按以下方式填写上述模型的表格
class TimestampForm (forms.Form):
def clean(self):
cleaned_data = super(TimestampForm, self).clean()
from_date = cleaned_data.get("from_date")
to_date = cleaned_data.get("to_date")
if from_date > to_date:
raise forms.ValidationError("'From date' cannot be a later time than 'To date'.")
if to_date > (timezone.now()):
raise forms.ValidationError("'To date' cannot be a future time.")
return cleaned_data
from_date = forms.DateField(label = 'From Date * ', widget = DateWidget(attrs = {'id':"from_date"}, usel10n = True, bootstrap_version = 3))
to_date = forms.DateField(label = 'To Date', widget = DateWidget(attrs = {'id':"to_date"}, usel10n = True, bootstrap_version = 3))
使用上述模型和表单,您不必对HTML进行任何修改,即可创建Django模型,如下所示
class Request(models.Model):
from_date = models.DateField(default = timezone.now, blank = True)
to_date = models.DateField(default = timezone.now, blank = True)
按以下方式填写上述模型的表格
class TimestampForm (forms.Form):
def clean(self):
cleaned_data = super(TimestampForm, self).clean()
from_date = cleaned_data.get("from_date")
to_date = cleaned_data.get("to_date")
if from_date > to_date:
raise forms.ValidationError("'From date' cannot be a later time than 'To date'.")
if to_date > (timezone.now()):
raise forms.ValidationError("'To date' cannot be a future time.")
return cleaned_data
from_date = forms.DateField(label = 'From Date * ', widget = DateWidget(attrs = {'id':"from_date"}, usel10n = True, bootstrap_version = 3))
to_date = forms.DateField(label = 'To Date', widget = DateWidget(attrs = {'id':"to_date"}, usel10n = True, bootstrap_version = 3))
使用上述模型和表单,您不必对HTML进行任何修改我认为您应该尝试在互联网上找到解决方案,尝试一下,如果遇到困难,进行新的研究,然后再创建新的问题。我认为您应该尝试在互联网上找到解决方案,尝试一下,如果你遇到麻烦,做新的研究,然后再创建新的问题。我已经有了一个模型和模型表单,请检查我更新的问题。我的缺点是以前没有分享它。你能告诉我默认的表单和模型,而不是比较它吗?我们不能禁用所有落后于
from\u date
的日期,这样用户就没有空间选择to\u date
小于from\u date
。我已经有了一个模型和模型表单,检查我的最新问题。我的缺点是以前没有共享它。你能告诉我默认的表单和模型,而不是比较它吗?我们不能禁用所有落后于自\u日期
的日期,这样用户就没有空间选择至\u日期
小于自\u日期
。