Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 21, 2009 20:59:14

baloo
От:
Зарегистрирован: 2008-05-13
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

ComboBox в Pylons

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



Офлайн

#2 Апрель 22, 2009 13:17:48

vak
От:
Зарегистрирован: 2007-05-04
Сообщения: 262
Репутация: +  0  -
Профиль   Отправить e-mail  

ComboBox в Pylons

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()}



Офлайн

#3 Апрель 24, 2009 20:57:11

baloo
От:
Зарегистрирован: 2008-05-13
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

ComboBox в Pylons

vak
Пример:

	${h.form(h.url(action='index'),method='post')}
<div class="f-row">
...
О, спасибо. Попробуемо



Отредактировано (Апрель 24, 2009 21:02:14)

Офлайн

#4 Май 9, 2009 09:45:28

baloo
От:
Зарегистрирован: 2008-05-13
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

ComboBox в Pylons

Добрый день еще раз, с праздником.
Я так понял, чтобы не организовывать вручную код 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 - это значение, предвыбранное по умолчанию. У меня, к примеру, тройка там стоит. А предвыбранное значение - вре равно “работающий”.



Офлайн

#5 Май 9, 2009 14:18:31

ofigetitelno
От:
Зарегистрирован: 2006-08-01
Сообщения: 136
Репутация: +  0  -
Профиль   Отправить e-mail  

ComboBox в Pylons

:)
${h.select(“classcode”, c.default_code, [ for x in c.classes])}
это?



Офлайн

#6 Май 9, 2009 17:14:13

baloo
От:
Зарегистрирован: 2008-05-13
Сообщения: 59
Репутация: +  0  -
Профиль   Отправить e-mail  

ComboBox в Pylons

Оно самое. Спасибо, :-), никак не привыкну к питоновским выкрутасам



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version