2013-04-04 4 views
1

Я хочу использовать какой-то календарь, например, на панели django-admin, чтобы выбрать дату. Я попытался использовать это, но он не показывает календарь.DateField с календарем Django

aDate = forms.DateField(widget = AdminDateWidget) 
+0

Не могли бы вы уточнить вашу проблему немного больше. Кажется, у меня проблемы с пониманием. –

+0

Датфилд работает, но я хочу иметь календарь, чтобы выбрать дату, как на странице администратора, или что-то в этом роде –

ответ

0

forms.py

from django import forms 
from django.contrib.admin import widgets 

from .models import MyModel   

class MyForm(forms.ModelForm): 
    class Meta: 
     model = MyModel 

    def __init__(self, *args, **kwargs): 
     super(MyForm, self).__init__(*args, **kwargs) 
     self.fields['aDate'].widget = widgets.AdminDateWidget() 

добавить эти CSS и JS в шаблоне

{% load static %} 

<link rel="stylesheet" type="text/css" 
    href="{% static 'admin/css/forms.css' %} "/> 
<link rel="stylesheet" type="text/css" 
    href="{% static 'admin/css/base.css' %} "/> 
<link rel="stylesheet" type="text/css" 
    href="{% static 'admin/css/global.css' %}"/> 
<link rel="stylesheet" type="text/css" 
    href="{% static 'admin/css/widgets.css' %}"/> 


<script type="text/javascript" 
    src="/admin/jsi18n/"></script> 
<script type="text/javascript" 
    src="{% static 'admin/js/core.js' %}"></script> 
<script type="text/javascript" 
    src="{% static 'admin/js/admin/RelatedObjectLookups.js' %}"></script> 
<script type="text/javascript" 
    src="{% static 'admin/js/jquery.js' %}"></script> 
<script type="text/javascript" 
    src="{% static 'admin/js/jquery.init.js' %}"></script> 
<script type="text/javascript" 
    src="{% static 'admin/js/actions.js' %}"></script> 
<script type="text/javascript" 
    src="{% static 'admin/js/calendar.js' %}"></script> 
<script type="text/javascript" 
    src="{% static 'admin/js/admin/DateTimeShortcuts.js' %}"></script>