如何在Django日期字段中使用Calendar

时间:2011-06-26 17:06:34

标签: python django date

我在django中有这个Datetime字段

update_date     = models.DateField()

但我想要弹出日历。他们说在文档中写这个

class CalendarWidget(forms.TextInput):
    class Media:
        css = {
            'all': ('pretty.css',)
        }
        js = ('animations.js', 'actions.js')

现在我几乎没有问题

  1. 在何处声明此课程以及如何使用
  2. 我没有pretty.css,animation.css,怎么能得到它
  3. 我需要为它做编程吗?

1 个答案:

答案 0 :(得分:3)

文件'pretty.css','animations.js'和'actions.js'不包含在Django中,文档中的这些代码只是一个例子。你有责任为更漂亮的小部件编写代码 - 我个人喜欢jQuery小部件(参见下面的参考链接)。来自文档:

  

哪个JavaScript工具包?   存在许多JavaScript工具包,其中许多包括可用于增强应用程序的小部件(例如日历小部件)。 Django故意避免祝福任何一个JavaScript工具包。每个工具包都有自己的相对优势和劣势 - 使用适合您要求的工具包。 Django能够与任何JavaScript工具包集成。

假设你为你的花式小部件定义了所有的css和js,在ModelForm中你必须覆盖字段小部件,如下所示:

class SomeForm(forms.ModelForm):
    ...
    update_date = forms.CharField(widget=CalendarWidget)
    ...

不要忘记在模板标题处显示form media

看看这些答案:

  1. What's the cleanest, simplest-to-get running datepicker in Django?
  2. https://groups.google.com/group/django-users/browse_thread/thread/8bd4675ba642ebcb?pli=1