Introducing ModelDesigner


TurboGears 0.9 will ship with at webbased administration app called ToolBox.
Among the tools available right now there is a model browser (CatWalk), a webbased Python interpreter, a Widget browser and now a model designer.
The ModelDesigner is a code generation tool for SQLObject models.
Watch a short introductory screencast here.
Or play with an online demo.

I’m have still some cleanup to do before I add it to the repository, furthermore it needs support for saving designs and table creation.
Enjoy.

12 Responses to “Introducing ModelDesigner”

  1. Swaroop C H Says:

    Very cool.

  2. reflog Says:

    this is awesome Ronald!
    the only thing that would make this even better is online visualisation of the result using Dot (graphviz) or something :)

  3. Administrator Says:

    If you do a ‘view-source’ on the demo you can see there is a ‘Diagram’ tab commented out next to the ‘Generate Code’ tab… but you know, release early, release often =)

  4. d Says:

    SWEETTT!

  5. william Says:

    Very good.

    Do you plan to add sqlmeta ? or the _get_ / _set_ possibilitites ?

  6. Administrator Says:

    There is support for sqlmeta.table and sqlmeta.idName. Maybe I’ll add a ‘advance’ group of settings later. Maybe make it collapsable so it doesn’t complicate the interface to much.

  7. Kevin Dangoor Says:

    Very nice, indeed, Ronald!

    Good screencast, as well!

  8. Ian Bicking Says:

    Impressive indeed! The UI feels really nice too. Can this be used with fromDatabase to create the code for an existing database (with fully enumerated columns, unlike fromDatabase)?l

  9. Administrator Says:

    Not yet.. I plan to take a look at SQLObject-admin versioning facilities. The end goal is to be able, not only to define new schemas but to modify existing ones.
    At that point loading an existing schema using fromDatabase will be posible.

  10. michele Says:

    Very nice, great work!

  11. kpd Says:

    Wow! Wonderful. Thanks!

  12. Jesse Says:

    Wow, this is *really* nice. Good job.