Найти - Пользователи
Полная версия: технология создание виджетов
Начало » Django » технология создание виджетов
1
Alex_Kutsan
Не нашел нормальных примеров. В документации не совсем понятно. Мне нужно сделать виджет календаря, для выбора даты. Тоесть мне нужно написать или найти яваскриптовский календарик. И как и КАК с помощью виджета его туда впихнуть? Там есть место для явы скрипта и CSS.
js = ('/admin/jsi18n/',
settings.ADMIN_MEDIA_PREFIX + ‘js/core.js’,
settings.ADMIN_MEDIA_PREFIX + “js/calendar.js”,
settings.ADMIN_MEDIA_PREFIX + “js/admin/DateTimeShortcuts.js”)
css = {
‘all’: (
settings.ADMIN_MEDIA_PREFIX + ‘css/forms.css’,
settings.ADMIN_MEDIA_PREFIX + ‘css/base.css’,
settings.ADMIN_MEDIA_PREFIX + ‘css/widgets.css’,)
}

Но все календарики на ява скрипте предполагают минимум Html.
И как при даже если выйдет включить это, как при нажатии на число в календарике отобразить его в поле ДАТА?
slav0nic
возьми да глянь виджет в админке (если нужен админский виджет)
А так:

from django.forms.widgets import DateInput
class JSDataPickerWidget(DateInput):

def __init__(self, attrs={'class': 'datepicker'}, format=None):
super(JSDataPickerWidget, self).__init__(attrs)

class Media:
css = {'all': ('http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.3/themes/smoothness/jquery-ui.css',)}
js = ('https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js',
'https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/jquery-ui.min.js',
'basicapp/js/datepicker.js')
{% block extra_head %}{{ form.media }}{% endblock %}
и разруливаешь сдесь JS читая доку по DatePicker
Alex_Kutsan
Спасибо, помогло.
ferraq
slav0nic
возьми да глянь виджет в админке (если нужен админский виджет)
А так:

Код:

from django.forms.widgets import DateInput
class JSDataPickerWidget(DateInput):

def __init__(self, attrs={'class': ‘datepicker’}, format=None):
super(JSDataPickerWidget, self).__init__(attrs)

class Media:
css = {'all': ('http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.3/themes/smoothness/jquery-ui.css',)}
js = ('https://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js',
'https://ajax.googleapis.com/ajax/libs/jqueryui/1.8.13/jquery-ui.min.js',
‘basicapp/js/datepicker.js’)
Код:

{% block extra_head %}{{ form.media }}{% endblock %}
и разруливаешь сдесь JS читая доку по DatePicker
Что то я не пойму что дальше с этим делать

data = forms.CharField(widget=JSDataPickerWidget)

такс data = forms.CharField(widget=JSDataPickerWidget) ??

делаю ничего не происходит …
Enchantner
а если data = forms.CharField(widget=JSDataPickerWidget()) ? :)

И да, советую в качестве надстройки к админке ставить django-grappelli. Тогда таких проблем вообще не будет.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB