How to do basic CRUD apps with Python

half.italian at gmail.com half.italian at gmail.com
Thu May 17 02:13:35 EDT 2007


On May 14, 7:46 pm, "James T. Dennis" <jades... at idiom.com> wrote:
> Bruno Desthuilliers <bruno.42.desthuilli... at wtf.websiteburo.oops.com> wrote:
> > walterbyrd a ?crit :
> >> With PHP, libraries, apps, etc. to do basic CRUD are everywhere. Ajax
> >> and non-Ajax solutions abound.
> >> With Python, finding such library, or apps. seems to be much more
> >> difficult to find.
> >> I thought django might be a good way, but I can not seem to get an
> >> answer on that board.
> >> I would like to put together a CRUD grid with editable/deletable/
> >> addable fields, click on the headers to sort. Something that would
> >> sort-of looks like an online  spreadsheet. It would be nice if the
> >> fields could be edited in-line, but it's not entirely necessary.
> >> Are there any Python libraries to do that sort of thing? Can it be
> >> done with django or cherrypy?
> > You may want to have a look at turbogears's widgets.
>
>  Admittedly I had to look up the meaning of CRUD in this context:
>  (http://en.wikipedia.org/wiki/Create%2C_read%2C_update_and_delete
>  create, read, update, and delete).
>
>  I'm looking at Turbogears' Widgets in another window as I type
>  this ... but it will be awhile before I can comment on how they
>  might apply to the OP's needs.  Actually I'm wholly unqualified
>  to comment on his or her needs ... but I can comment on how I
>  interpreted the question.
>
>  Even with the SQLAlchemy SQLSoup examples there's still an
>  annoying about of boilerplate coding that has to be done in order
>  to create a web application for doing CRUD on a database.
>
>  The missing element seems to be the ability to autogenerate
>  web forms and reports with the requisite controls in them.
>
>  Imagine, for a moment, being able to do something like:
>
>         >>> import sqlalchemy.ext.webcrud as crud
>         >>> db = crud.open(....)
>         >>> db.displayTopForm()
>         '<HTML ....
>         ....
>         </HTML>'
>
>  ... and having a default "top level" web page generated with
>  options to query the database (or some specific table in the
>  database to be more specific, add new entries, etc).
>
>  I'm thinking of some sort of class/module that would generate
>  various sorts of HTML forms by default, but also allow one to
>  sub-class each of the form/query types to customize the contents.
>
>  It would use introspection on the database columns and constraints
>  to automatically generate input fields for each of the columns and
>  even fields for required foreign keys (or links to the CRUD for those
>  tables?).  Ideally it would also automatically hide autogenerated
>  (index/key) fields, and map the table column IDs to form names (with
>  gettext support for l10n of those).
>
>  I think that's the sort of thing the OP was looking for.  Not the
>  ORM ... the the glue between the web framework and the ORM.
>
> --
> Jim Dennis,
> Starshine: Signed, Sealed, Delivered

Sounds like you're talking about rails.  Do any of the python packages
compare with the ease of rails?  I got in just deep enough to see the
possibilities of it, and then had to stop to do real work in php.  I'd
be very interested in Python on Rails!

~Sean




More information about the Python-list mailing list