Как создать отфильтрованное поле Dropdown Choice в Django, используя ajax? - PullRequest
4 голосов
/ 31 января 2011

Я пытаюсь создать динамически фильтруемые раскрывающиеся поля выбора, я пролистал ниже блог, но это сбивает с толку, может кто-нибудь предложить простой способ сделать это в Django.

Я пытаюсь создать динамически отфильтрованное поле выбора в Django. Я попробовал шаги, описанные здесь , но я не понимаю этого.

Как мне создать отфильтрованное поле Dropdown Choice в Django, используя ajax?

Ответы [ 3 ]

5 голосов
/ 31 января 2011

Вы можете использовать dajaxproject (django + ajax).Пример: http://www.dajaxproject.com/forms/ Это так просто.

0 голосов
/ 05 февраля 2012

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

Для меня это работало так, что я заменил массив:

modelstxt[1] = "1\tEscort\n2\tTaurus";
modelstxt[2] = "1\tAltima\n2\tMaxima";

С шаблонными тегами, которые будут создавать тот же массив при создании страницы (обратите внимание, что я использую местоположения и области, а не модели и марки):

areastxt[0] = "0\t--";
{% for location in locations %}
   areastxt[{{location.id}}] = "0\t--
   {% for area in areas %}
      {% if area.location_id == location.id %}
         \n{{area.id}}\t{{area.name}}
      {% endif %}
   {% endfor %}";
{% endfor %}

Отказ от ответственности: я noob'ish, поэтому я могу совершитьnoob faux-pas используя этот подход.

0 голосов
/ 31 января 2011

Может быть, вы имеете в виду что-то подобное?http://code.google.com/p/django-ajax-selects/

Я реализовал это в нескольких проектах, и он работает хорошо.Если вам нужна форма поиска внешних ключей, посмотрите приложение, которое я запустил несколько недель назад:

https://github.com/schneck/django-foreignkeysearch

...