Найти - Пользователи
Полная версия: ComboBox в Pylons
Начало » Pyramid / Pylons / TurboGears » ComboBox в Pylons
1
baloo
Здравствуйте.
Что-то никак не пойму технологию создания выпадающего списка (LookUp-ComboBox'a). Ну, когда в главной таблице поле - ссылка по ID на справочную таблицу, содержащую ID и Наименование. Никто не укажет, куда копать?
vak
baloo
Здравствуйте.
Что-то никак не пойму технологию создания выпадающего списка (LookUp-ComboBox'a). Ну, когда в главной таблице поле - ссылка по ID на справочную таблицу, содержащую ID и Наименование. Никто не укажет, куда копать?
Пример:

	${h.form(h.url(action='index'),method='post')}
<div class="f-row">
<label>Фильтр:</label>
<div class="f-inputs">
<select name="filter_g" class="i-text">
% for item in c.groups:
% if c.filter_g==item[0]:
<div class="f-inputs"><option value="${item[0]}" selected>${item[2].decode("utf-8")}</div>
% else:
<div class="f-inputs"><option value="${item[0]}">${item[2].decode("utf-8")}</div>
% endif
% endfor
</select>
<input name="submit" type="submit" class="submit" style="color: green;" value="Отфильтровать &raquo" />
</div><!-- f-inputs -->
</div><!-- f-row -->
${h.end_form()}
baloo
vak
Пример:

	${h.form(h.url(action='index'),method='post')}
<div class="f-row">
...
О, спасибо. Попробуемо
baloo
Добрый день еще раз, с праздником.
Я так понял, чтобы не организовывать вручную код HTML, можно воспользоваться helper'ом h.select
В МАКО-шаблоне это должно выглядеть примерно так:
${h.select("classcode", 3, [[1, u"Работающий"], [2, u"Пенсионер"], [3, u"Тунеядец"]])}
Ну, это если пары вбиты статически. А если они берутся из таблицы вроде
1 Работающий
2 Пенсионер
… и т. д.
Понятно, что в контроллере мы делаем вспомогательную выборку из справочной таблицы
    def new(self):
class_q = Session.query(Classes)
c.classes = class_q
values = {
'iid': nextid("GEN_INSURED_ID")
}
return htmlfill.render(render('/insured/new.mako'), values)
А вот как передать это в шаблон? Ничего не придумаю…
И еще хотелось бы уточнить. В доках сказано, что величина после имени select'a - это значение, предвыбранное по умолчанию. У меня, к примеру, тройка там стоит. А предвыбранное значение - вре равно “работающий”.
ofigetitelno
:)
${h.select(“classcode”, c.default_code, [ for x in c.classes])}
это?
baloo
Оно самое. Спасибо, :-), никак не привыкну к питоновским выкрутасам
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