2016-01-15 3 views
1

Я новичок в Django, и я пытаюсь найти виджет выбора даты Django Admin. У меня есть поиск, но результатов нет. Может ли кто-нибудь помочь мне использовать его в проекте, над которым я работаю?Использование date picker от django admin

У меня есть DateTimeField в моей модели, как это:

fin = models.DateTimeField() 

При создании модели из админ показывает виджет, но когда я делаю это из проекта он не делает.

ответ

7

Укажите виджет в вашей форме следующим образом:

from django.contrib.admin.widgets import AdminDateWidget 

class YourForm(forms.ModelForm): 
     from_date = forms.DateField(widget=AdminDateWidget()) 

Не забудьте включить скрипты и CSS в шаблоне:

{{ form.media }} 
+0

Hi Alex. Спасибо за ваш ответ. У меня все еще есть проблемы, чтобы показать календарь и функцию «Сейчас». Является ли это внешним для AdminDateWidget()? Есть ли способ увидеть документацию об этом? –

+0

Общая ошибка заключается в том, чтобы забыть включать в шаблон формы (css и js-файлы). Ты сделал это? Например, '{{form.media}}'. –

+2

@AlexMorozov Использование только '{{form.media}}' не работает. Другие связанные с администратором файлы css и js должны быть включены, как упоминалось здесь http://stackoverflow.com/a/12916263/3590449 – Ibrahim

1

Если по какой-то причине вы хотите использовать сборщик дат с PostgreSQL DateRangeField, вы можете сделать так:

from django.contrib.admin.widgets import AdminDateWidget 
from django.contrib.postgres.forms.ranges import DateRangeField, 
RangeWidget 

class YourForm(forms.ModelForm): 
    date_range = DateRangeField(widget=RangeWidget(AdminDateWidget()))