Чтобы добавить к принятому ответу, Jalali DateField
с соответствующим выбором даты может быть реализован без использования каких-либо пользовательских widget
.
Сначала вы должны указать свой DateField
, чтобы принять его вход в формате Jalali. Это может быть достигнуто за счетом this custom model field :
from django_jalali.db import models as jmodels
class Order(models.Model):
delivery_date = jmodels.jDateTimeField(verbose_name='تاریخ تحویل')
Теперь для отображения выбора даты для пользователя, вы можете использовать любой желаемый яваскрипт выбор даты, которая соответствует вашим потребностям, что-то вроде This Bootstrap Datepicker.
Предполагая, что поле будет отображаться как часть model form,
вы можете указать HTML
id
или class
из widget
ответственности за оказание ее:
class Order(forms.ModelForm):
class Meta:
model = Order
widgets = {
'delivery_date': forms.DateInput(attrs={'id':'datepicker'}),
}
Наконец, в шаблоне, вам нужно только инициализировать дату подборщика:
<script>
$(document).ready(function() {
$("#datepicker").datepicker({
minDate: 2,
maxDate: "+10D",
isRTL: true
});
});
</script>
Вот как это будет выглядеть в конце:
Как у управлять? Я хочу сделать то же самое. –
Я использовал ответ –