Pull to refresh

Comments 41

Похожую реализацию мы сделали у себя — cinemate.cc/movie/filter/ (см. вкладки актеры и режиссеры)
Как говорится, все в конечном итоге приходят к одному наиболее удобному и приятно выглядящему варианту.
с таким контролом особых альтернатив нет, есть еще ajax_selects, поддерживающий мультиселект, но у него немного другая идея — выбранные элементы «откладываются» отдельно от окна ввода
ajax_select мы тоже используем, но в админке :) По некоторым причинам мы пока не можем отказаться от него в пользу описываемого варианта.
UFO landed and left these words here
Я вижу вы очень любите Джорджа Клуни :)
UFO landed and left these words here
UFO landed and left these words here
А что за параноидальная мода в последнее время коммерчески белые проекты в домене на кокосовых островах (.cc) делать? Вы же даже не трекер, а база типа кинопоиск.ру — удобная, классная спору нет — оценил… но для ру-аудитории в зоне .cc поди нашлось бы поудобнее для запоминания чем окончаени открытого слога… не ну я понимаю в свое время carderplanet в .cc перехал… но каталог фильмов… это уже диагноз…
Вы не поверите, но пользователям западает именно эта отличительная особенность сайта, немало человек приходят с поисковиков, забивая в строке www.google.ru/search?q=поиск+по+торрентам+.cc (реальный запрос)

А если серьезно, то не смотря на то, что вы понимаете, мы понимаем и пользователи понимают, что сайт по сути аггрегатор ссылок на торрент-трекеры, сам ничего не хранит, являясь в некотором роде поисковиком, выдающим ссылки на иные сайты, тем не менее даже его можно закрыть при должном желании. Достаточно вспомнить недавние публикации на тему удаления из Яндекса и/или других поисковиков ссылок на трекеры.
cinemate.cc — ого!
Как вы собрали столько фильмов и ссылок — вручную?! Кажется это просто титанический по объему труд.
Ссылки и информацию о фильмах собирает робот с трекеров, а мы лишь вручную проверяем данные фильмов перед их публикацией на сайте. Вручную ссылки никто не добавляет, нам бы понадобились тысячи китайцев :)
робот так же на питоне написан?
Да. Уж больно язык приятный :)
ого, а рутрекер мониторите?
Да. Полный список сайтов можно посмотреть здесь — cinemate.cc/site/location/
Список периодически пополняется. В ближайшее время добавим kinozal.tv.
Первая что приходит на ум глядя на скриншот — Facebook.
Может потому, что «решением стал контрол из Фейсбука и Контакта — пользователи знакомы с ним, а значит не нужно объяснять как он работает»? :)
и мы только за! контрол называется — fcbkcomplete, стилизацией займемся под общий редизайн
Чёрт, смешной код.

def __init__(self, *args, **kwargs):
    ...
    args[0]


Если кто-то сделает не Form(initial_data), а Form(initial=initial_data), то будет вам эксепшн.

А еще повеселил момент, когда собираете json. Про simplejson (который в >py2.6 import json) не слышали?

Ой, да вы потом еще не application/json (или хотя бы text/javascript) отдаёте клиенту, а text/html.

Кхм, ошибок хоть жопой жуй. Плохая статья, негодная.
Ух, я ошибся. Там «if args» — ну вы тут, определенно, решили проблему например.
Это повод для обсуждения, спасибо
про аргсы и типы, спасибо
про джон — проще собрать руками, убрал чтобы не смущать
Проще? Ну ок.

А, ну да, ну да. Explicit is better than implicit.
Абсолютно согласен. Мне тоже не нравится, когда так коверкают язык :(
Можно же сказать по-русски — что-нибудь вроде «выбор вариантов с автодополнением» или около того.
self.fields[field].choices = ([(int(o), Location.objects.get(id = int(o)).complete_name) for o in loc_list] )


Но это же ужасно, для loc_list в 1000 элементов будет сделано 1000 запросов в базу данных. Как минимум, замените на
Location.objects.filter(id__in=loc_list)


Про точки с запятой в конце строк я вообще молчу.
скорее всего вы правы, в этом конкрентном месте тысяче кратного выигрыша не будет, элементов столько не бывает. точка с запятой осталась от правки раскраски кода — кстати, какая есть нормальная( чтобы можно было редактировать раскрашенный код) подсветка питона, работающая на хабре?
Даже если столько локаций у вас не будет, пример кода вы все равно подаете плохой.

Ну и заметку: django.http.QueryDict можно сделать «мутабельным», передав ему параметр mutable=True при создании экземпляра.
насчет раскраски — хабр поддерживает тег source с параметром lang='python', гляньте в его справку по html-тегам
Скажем нет многословию в формах!

Так должно выглядеть определение тру-декларативного филда для m2m:

field = AutoSuggestSelectMultiple(attrs={url:'whatever'})

:)
доведем до такого состояния, на очередном рефакторинге, сейчас главное чтобы работало и приносило пользу, остальное никого не волнует, с той стороны экрана
При использовании FCBKcomplete столкнулся с двумя багами (первый — критичный):

1. Если заполнить поле каким-либо значением, затем удалить его и снова выбрать это значение, то при отправке формы это значение уже не отправится (проверить можно с помощью демки: www.emposha.com/demo/fcbkcomplete_2/). Этот баг уже известен 4 месяца: github.com/emposha/FCBKcomplete/issues#issue/17, тем не менее, автор не спешит его исправить, как и остальные баги (видимо, проект более не развивается).

2. Глушится TAB, из-за чего мы не можем перейти к следующему полю формы. TAB используется при выборе значения из списка, однако пока мы не начали ничего вводить в поле — глушить TAB незачем.
«Последняя строчка — основная, если у формы есть инициализационные значения — заполним choices.»
Где-то вы не договариваете. Если просто заполнить choices, элементы SelectMultiple выведутся, но не будут selected. Из-за этого скрипт их не отрисовывает. У вас на странице предзаполненные города имеют параметр selected=«selected», а это значит, что вы заполняете еще и поле initial. Но код этого заполнения не показываете. Почему?
А как вы сделали, что автокомплит для городов находит соответствия и для кириллицы и для латыницы?
с этим уже сервер разбирается, можно и ошибки типа «vjcrdf» == «москва» исправлять
а может кто то подсказать как использую FCBKcomplete вводить не только то что есть в базе (autocomplete) но и новые пункты. Что то подобное есть в Wordpress с добавлением тегов cl.ly/2B01090h2A413n2w1T21
[{«caption»:«London», «value»:4}]

В версии 2.7.5 fcbkcomplete формат json поменялся:

[{«key»:«London», «value»:4}]
Sign up to leave a comment.

Articles