Форум сайта python.su
Дорогие товарищи, я к вам опять со своими проблемами, спасайте :-)
Вот у меня есть виджет из стандартной поставки:
class TableFormDesc(widgets.WidgetsList):
name = "Table Form"
full_class_name = "turbogears.widgets.TableForm"
_id = TextField('ID')
_bestellnr = TextField('Bestellnr')
_typ = TextField('GF Typ')
и т. д.
Отредактировано (Ноя. 6, 2008 17:57:18)
Офлайн
hildi
- почему перевирается сase? Где можно исправить, чтобы заголовки к полям назывались нормально “ID”, “GF Typ” и т. д., а не “первая - заглавная, а все остальные - строчные”?
class TableFormDesc(widgets.WidgetsList):
name = "Table Form"
full_class_name = "turbogears.widgets.TableForm"
id = TextField(label='ID')
bestellnr = TextField(label='Bestellnr')
typ = TextField(label='GF Typ')
hildiМожете использовать css, все поля помечены классами, для формы можно передать класс через form_attrs. Можете использовать свой шаблон, передав его в форму:
- можно как-то заголовки выровнять по правому краю? А то позорище такое внатуре :-(
- ну и заодно настроить cellpadding и пр. свойства таблицы…
my_form = Form(fields=TableFormDesc, template="ваш шаблон")
Офлайн
Cпасибо, все получилось!
апд.
Не, ни фига не получилось. А как из контроллера обратиться теперь к этим полям?
Раньше я так делала (подозреваю, что неправильно, но тонкая философия ТГ мне не дается в упор :-))
@expose(template="team_ne.templates.save")
def save(self, **kw):
Session = sessionmaker()
session = Session()
newitem = Item()
newitem.iddqd = kw['ID']
newitem.bestellnr = kw['Bestellnr']
newitem.typ = kw['GF Typ']
и т. д.
Отредактировано (Ноя. 7, 2008 12:17:17)
Офлайн
hildiа причем тут лейблы? поля вам будут доступны по именам:
А с указанием лейблов в качестве параметра TextField халява кончилась. Что делать?
newitem.iddqd = kw['id']
newitem.bestellnr = kw['bestellnr']
newitem.typ = kw['typ']
class TableFormDesc(widgets.WidgetsList):
id = TextField(label='ID')
bestellnr = TextField(label='Bestellnr')
typ = TextField(label='GF Typ')
Офлайн
Я верю! Тем более, что все действительно работает! :-)
PooHБудет, но не следующий :-) Обработку ошибок я только что начала и еще не пришла в отчаяние :-)
думаю следующий ваш вопрос будет про @validate и @error_handler
Офлайн
hildiСделайте свой шаблон для этой формы.
А следующий вопрос будет такой: у меня получилась длиннющая форма ввода аж на 36 полей. Ее можно как-то разделить на две части, чтобы разместить их горизонтально? Или это надо делать две формы и вешать событие “submit” на общую кнопку? (интересно, это вообще возможно с готовым виджетом?)
Офлайн