FastNetMon

среда, 21 октября 2009 г.

Pylons: работа с формами, FormAlchemy

Обнаружил замечательный инструмент работы с формами: FormAlchemy, он способен генерировать HTML формы из схемы бд SQLAlchemy

Устанавливаем:
easy_install FormAlchemy


Открываем файл:
vim myapp/controllers/main.py
и добавляем в верху подключение модуля:
from formalchemy import FieldSet, Field


Теперь внизу добавляем новый контроллер для теста создания формы для добавления нового объекта:

def form_new(self):
fs = FieldSet(model.Person)
return fs.render()



Для редактирования полей существующего объекта используется следующий контроллер:

def form_edit(self):
my_person = meta.Session.query(model.Person).first()
fs = FieldSet(my_person)
return fs.render()



Также, разумеется, есть возможность изменять данные формы, верифицировать их и вносить измененный объект в базу, эти примеры можете посмотреть на офсайте и на странице проекта.

Тут следует отметить, что FA генерирует только набор полей, но не обрамляет все это в таги form и не добавляет управляющих элементов (submit, cancel).

Итого: штука крайне стремная и крайне сырая и мне НЕ НРАВИТСЯ. Продолжаем поиски дальше :)

4 комментария :

  1. такое ощущение, что у автор документацию по FormAlchemy не открывал =)

    ОтветитьУдалить
  2. Открывал, но оно мне не понравилось - число субъективно. Те же Tosca Widgets намного круче и удобнее - http://phpsuxx.blogspot.com/2010/03/pylons-toscawidgets.html и http://phpsuxx.blogspot.com/2010/03/pylons-toscawidgets_14.html

    ОтветитьУдалить
  3. я посоветовал бы посмотреть на шаблон pylons_fa для paster который вместе с formalchemy поставляется =)) TW использую - штука, естественно хорошая =))

    ОтветитьУдалить
  4. А он на mako заточен, мне mako не нравится :(

    ОтветитьУдалить

Примечание. Отправлять комментарии могут только участники этого блога.