【问题标题】:Calendar input like admin application Django日历输入,如管理应用程序 Django
【发布时间】:2010-08-09 15:50:55
【问题描述】:

使用 django 管理应用程序显示Today | CalendarSymbol 的日期。我在我的表单中使用了一个日期字段,我认为它会为我做到这一点,我将如何去做呢?我通常会使用 jquery datepicker 插件,这是要走的路吗?
提前致谢,
院长

【问题讨论】:

    标签: django django-forms


    【解决方案1】:

    通常我会这样做:

    class CalendarWidget(forms.TextInput):
        class Media:
            css = {
                'all': ('datepicker.css',)
            }
            js = ('datepicker.js')
    
        def __init__(self, attrs={}):
            super(CalendarWidget, self).__init__(
                attrs={'class': 'datepicker', 
                       'size': '14', 
                       'readonly':'readonly'})
    
    class ToDoForm(forms.ModelForm):
        class Meta:
            model = yourModel
        your_date_field = forms.DateTimeField(widget=CalendarWidget)
    

    最后在你的模板中,像这样:

    $(".datepicker").datepicker();
    

    希望对你有帮助。

    【讨论】:

    • 那么小部件类中提到的 js 和 CSS 我需要包含这些还是它们已经在 django 中?
    • 您必须包含您的日历媒体(例如 jquery 日历)...记得在您的 中添加 {{ form.media }}
    【解决方案2】:

    我最终使用了类似管理员的小部件,很容易实现,而且没有外部库。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多